<SEC-DOCUMENT>0001493152-23-007925.txt : 20230316
<SEC-HEADER>0001493152-23-007925.hdr.sgml : 20230316
<ACCEPTANCE-DATETIME>20230316163051
ACCESSION NUMBER:		0001493152-23-007925
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		85
CONFORMED PERIOD OF REPORT:	20221231
FILED AS OF DATE:		20230316
DATE AS OF CHANGE:		20230316

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			Co-Diagnostics, Inc.
		CENTRAL INDEX KEY:			0001692415
		STANDARD INDUSTRIAL CLASSIFICATION:	SURGICAL & MEDICAL INSTRUMENTS & APPARATUS [3841]
		IRS NUMBER:				462609396
		STATE OF INCORPORATION:			UT
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		10-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-38148
		FILM NUMBER:		23739246

	BUSINESS ADDRESS:	
		STREET 1:		4049 SOUTH HIGHLAND DRIVE
		CITY:			SALT LAKE CITY
		STATE:			UT
		ZIP:			84124
		BUSINESS PHONE:		8012789769

	MAIL ADDRESS:	
		STREET 1:		4049 SOUTH HIGHLAND DRIVE
		CITY:			SALT LAKE CITY
		STATE:			UT
		ZIP:			84124
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-K
<SEQUENCE>1
<FILENAME>form10-k.htm
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:dei="http://xbrl.sec.gov/dei/2022" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:us-gaap="http://fasb.org/us-gaap/2022" xmlns:us-gaap-supplement="http://fasb.org/us-gaap-sup/2022q3" xmlns:srt-supplement="http://fasb.org/srt-sup/2022q3" xmlns:us-roles="http://fasb.org/us-roles/2022" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:country="http://xbrl.sec.gov/country/2022" xmlns:srt="http://fasb.org/srt/2022" xmlns:CODX="http://codiagnostics.com/20221231">
<head>
     <title></title>
<meta http-equiv="Content-Type" content="text/html" />
</head>
<!-- Field: Set; Name: xdx; ID: xdx_02B_US%2DGAAP%2D2022 -->
<!-- Field: Set; Name: xdx; ID: xdx_03A_CODX_codiagnostics.com_20221231 -->
<!-- Field: Set; Name: xdx; ID: xdx_048_20220101_20221231 -->
<!-- Field: Set; Name: xdx; ID: xdx_05D_edei%2D%2DEntityCentralIndexKey_0001692415 -->
<!-- Field: Set; Name: xdx; ID: xdx_059_edei%2D%2DAmendmentFlag_false -->
<!-- Field: Set; Name: xdx; ID: xdx_05A_edei%2D%2DDocumentFiscalPeriodFocus_FY -->
<!-- Field: Set; Name: xdx; ID: xdx_076_XDX_form10%2Dk.xdx -->
<!-- Field: Set; Name: xdx; ID: xdx_06B_USD_1_iso4217%2D%2DUSD -->
<!-- Field: Set; Name: xdx; ID: xdx_062_Shares_2_xbrli%2D%2Dshares -->
<!-- Field: Set; Name: xdx; ID: xdx_06D_USDPShares_3_iso4217%2D%2DUSD_xbrli%2D%2Dshares -->
<!-- Field: Set; Name: xdx; ID: xdx_069_Pure_4_xbrli%2D%2Dpure -->
<!-- Field: Set; Name: xdx; ID: xdx_067_Sqft_0_utr%2D%2Dacre -->
<body style="font: 10pt Times New Roman, Times, Serif">
<div style="display: none">
<ix:header>
 <ix:hidden>
  <ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityCentralIndexKey">0001692415</ix:nonNumeric>
  <ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:AmendmentFlag">false</ix:nonNumeric>
  <ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:DocumentFiscalPeriodFocus">FY</ix:nonNumeric>
  <ix:nonFraction name="us-gaap:IncomeTaxReceivable" contextRef="AsOf2021-12-31" id="xdx2ixbrl0066" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="AsOf2021-12-31" id="xdx2ixbrl0081" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2022-12-31" id="xdx2ixbrl0083" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:NotesAndLoansReceivableNetNoncurrent" contextRef="AsOf2022-12-31" id="xdx2ixbrl0092" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="AsOf2021-12-31" id="xdx2ixbrl0111" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:TaxesPayableCurrent" contextRef="AsOf2022-12-31" id="xdx2ixbrl0116" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" contextRef="AsOf2022-12-31" id="xdx2ixbrl0119" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="AsOf2021-12-31" id="xdx2ixbrl0135" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PreferredStockValue" contextRef="AsOf2022-12-31" id="xdx2ixbrl0152" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PreferredStockValue" contextRef="AsOf2021-12-31" id="xdx2ixbrl0153" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:TreasuryStockValue" contextRef="AsOf2021-12-31" id="xdx2ixbrl0191" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="AsOf2021-12-31" id="xdx2ixbrl0201" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:GoodwillImpairmentLoss" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0237" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:GainOnRemeasurementOfAcquisitionContingencies" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0255" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0276" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeTax" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0279" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2020-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0302" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2020-12-31_us-gaap_TreasuryStockMember" id="xdx2ixbrl0304" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0306" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2020-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0310" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="From2021-01-012021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0314" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0318" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0319" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" contextRef="From2021-01-012021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0324" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" contextRef="From2021-01-012021-12-31_us-gaap_TreasuryStockMember" id="xdx2ixbrl0326" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0328" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0329" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2021-01-012021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0334" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0338" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0339" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2021-01-012021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0344" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0345" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2021-01-012021-12-31_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0347" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0348" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0352" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31_us-gaap_TreasuryStockMember" id="xdx2ixbrl0354" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0356" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0360" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0364" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31_us-gaap_TreasuryStockMember" id="xdx2ixbrl0366" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0368" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0372" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0376" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="From2022-01-012022-12-31_us-gaap_TreasuryStockMember" id="xdx2ixbrl0378" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0380" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0381" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueOther" contextRef="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0386" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueOther" contextRef="From2022-01-012022-12-31_us-gaap_TreasuryStockMember" id="xdx2ixbrl0388" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueOther" contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0390" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueOther" contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0391" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" contextRef="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0396" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" contextRef="From2022-01-012022-12-31_us-gaap_TreasuryStockMember" id="xdx2ixbrl0398" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0400" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0401" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0406" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2022-01-012022-12-31_us-gaap_TreasuryStockMember" id="xdx2ixbrl0408" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0410" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0411" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0416" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0417" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0419" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0420" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0421" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0424" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0425" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="From2022-01-012022-12-31_us-gaap_TreasuryStockMember" id="xdx2ixbrl0426" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0427" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember" id="xdx2ixbrl0429" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0432" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" id="xdx2ixbrl0433" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2022-01-012022-12-31_us-gaap_TreasuryStockMember" id="xdx2ixbrl0434" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember" id="xdx2ixbrl0435" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" id="xdx2ixbrl0436" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0440" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0448" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0452" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember" id="xdx2ixbrl0460" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:GoodwillImpairmentLoss" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0477" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:GainOnRemeasurementOfAcquisitionContingencies" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0483" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:NoncashLeaseExpense" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0486" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PaymentsToAcquireMarketableSecurities" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0534" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ProceedsFromDivestitureOfInterestInJointVenture" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl0536" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl0539" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:PaymentsForRepurchaseOfCommonStock" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0552" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:InterestPaidNet" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl0569" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:InterestPaidNet" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0570" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0582" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:BusinessAcquisitionMeasurementPeriodAdjustments" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl0585" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:FinancingReceivableAllowanceForCreditLosses" contextRef="AsOf2022-12-31_us-gaap_CashMember" id="xdx2ixbrl0691" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MarketableSecuritiesUnrealizedGainLoss" contextRef="From2022-01-012022-12-31_us-gaap_CashMember" id="xdx2ixbrl0693" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MarketableSecurities" contextRef="AsOf2022-12-31_us-gaap_CashMember" id="xdx2ixbrl0699" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:FinancingReceivableAllowanceForCreditLosses" contextRef="AsOf2022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0703" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MarketableSecuritiesUnrealizedGainLoss" contextRef="From2022-01-012022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0705" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MarketableSecurities" contextRef="AsOf2022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0711" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:FinancingReceivableAllowanceForCreditLosses" contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0715" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MarketableSecuritiesUnrealizedGainLoss" contextRef="From2022-01-012022-12-31_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0717" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MarketableSecurities" contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0723" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:FinancingReceivableAllowanceForCreditLosses" contextRef="AsOf2022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member" id="xdx2ixbrl0727" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:FinancingReceivableAllowanceForCreditLosses" contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel2Member" id="xdx2ixbrl0739" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:FinancingReceivableAllowanceForCreditLosses" contextRef="AsOf2022-12-31" id="xdx2ixbrl0751" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:PaymentsToShareHoldersValueAcquisitions" contextRef="From2021-12-302021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" id="xdx2ixbrl0797" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" id="xdx2ixbrl0819" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" id="xdx2ixbrl0825" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" id="xdx2ixbrl0831" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" id="xdx2ixbrl0837" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities" contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" id="xdx2ixbrl0843" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements" contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" id="xdx2ixbrl0849" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" id="xdx2ixbrl0861" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0891" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member" id="xdx2ixbrl0893" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MarketableSecurities" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0896" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MarketableSecurities" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member" id="xdx2ixbrl0898" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0901" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member" id="xdx2ixbrl0903" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:FairValueOfContingentConsiderationToCommonStock" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0906" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:FairValueOfContingentConsiderationToCommonStock" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member" id="xdx2ixbrl0907" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:FairValueOfContingentConsiderationToWarrants" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0911" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:FairValueOfContingentConsiderationToWarrants" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member" id="xdx2ixbrl0912" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LiabilitiesFairValueDisclosure" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0916" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LiabilitiesFairValueDisclosure" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member" id="xdx2ixbrl0917" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MarketableSecurities" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0921" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:MarketableSecurities" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member" id="xdx2ixbrl0923" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0926" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member" id="xdx2ixbrl0928" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:FairValueOfContingentConsiderationToCommonStock" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0931" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:FairValueOfContingentConsiderationToCommonStock" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member" id="xdx2ixbrl0932" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:FairValueOfContingentConsiderationToWarrants" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0936" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:FairValueOfContingentConsiderationToWarrants" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member" id="xdx2ixbrl0937" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LiabilitiesFairValueDisclosure" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member" id="xdx2ixbrl0941" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LiabilitiesFairValueDisclosure" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member" id="xdx2ixbrl0942" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2022-12-31" id="xdx2ixbrl1056" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2022-12-31" id="xdx2ixbrl1058" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2022-12-31_us-gaap_InProcessResearchAndDevelopmentMember" id="xdx2ixbrl1066" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2021-12-31_us-gaap_InProcessResearchAndDevelopmentMember" id="xdx2ixbrl1088" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2021-12-31_us-gaap_NoncompeteAgreementsMember" id="xdx2ixbrl1096" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2021-12-31" id="xdx2ixbrl1102" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ContractWithCustomerLiability" contextRef="AsOf2022-12-31" id="xdx2ixbrl1170" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1182" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1222" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1224" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1226" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1228" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1230" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1232" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1234" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1236" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1238" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1252" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1254" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1256" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1258" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1260" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1262" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1264" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1266" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1268" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1358" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1360" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1362" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1364" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1366" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1368" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1370" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1372" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1374" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1390" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1392" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1394" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1396" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1398" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1400" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1402" unitRef="Shares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1404" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue" contextRef="From2022-01-01to2022-12-31" id="xdx2ixbrl1406" unitRef="USDPShares" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="From2022-01-012022-12-31_us-gaap_StockCompensationPlanMember" id="xdx2ixbrl1444" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" contextRef="AsOf2021-12-31" id="xdx2ixbrl1528" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment" contextRef="AsOf2021-12-31" id="xdx2ixbrl1537" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:DeferredTaxAssetsLeaseLiability" contextRef="AsOf2021-12-31" id="xdx2ixbrl1540" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:DeferredTaxAssetsUniformCapitalization" contextRef="AsOf2021-12-31" id="xdx2ixbrl1543" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="CODX:DeferredTaxLiabilitiesRightOfUseAsset" contextRef="AsOf2021-12-31" id="xdx2ixbrl1561" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesOtherComprehensiveIncome" contextRef="AsOf2021-12-31" id="xdx2ixbrl1564" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesOther" contextRef="AsOf2022-12-31" id="xdx2ixbrl1566" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="AsOf2022-12-31" id="xdx2ixbrl1575" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="AsOf2021-12-31" id="xdx2ixbrl1576" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment" contextRef="AsOf2021-12-31" id="xdx2ixbrl1583" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" contextRef="AsOf2022-12-31" id="xdx2ixbrl1585" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" contextRef="From2021-01-012021-12-31" id="xdx2ixbrl1605" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued" contextRef="AsOf2021-12-31" id="xdx2ixbrl1617" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" contextRef="AsOf2022-12-31" id="xdx2ixbrl1635" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" contextRef="AsOf2022-12-31" id="xdx2ixbrl1637" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive" contextRef="AsOf2022-12-31" id="xdx2ixbrl1639" unitRef="USD" xs:nil="true"></ix:nonFraction>
  <ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" contextRef="AsOf2022-12-31" id="xdx2ixbrl1641" unitRef="USD" xs:nil="true"></ix:nonFraction>
  </ix:hidden>
 <ix:references>
  <link:schemaRef xlink:href="codx-20221231.xsd" xlink:type="simple" />
  </ix:references>
 <ix:resources>
    <xbrli:context id="From2022-01-01to2022-12-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-06-30">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-06-30</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2023-03-14">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2023-03-14</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_TreasuryStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_TreasuryStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_TreasuryStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_TreasuryStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_CommonStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_TreasuryStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_AdditionalPaidInCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_RetainedEarningsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_CustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:CustomersMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_CustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:CustomersMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_OneCustomerMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:OneCustomerMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_OneCustomerMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:OneCustomerMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_TwoCustomersTogetherMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:TwoCustomersTogetherMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_TwoCustomersTogetherMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:TwoCustomersTogetherMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_FourCustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:FourCustomersMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_FourCustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:FourCustomersMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_CustomersTogetherMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:CustomersTogetherMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_CustomersTogetherMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:CustomersTogetherMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-01-02_us-gaap_AccountingStandardsUpdate201602Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201602Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-01-02</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_CashMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CashMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_CashMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CashMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_FairValueInputsLevel1Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_FairValueInputsLevel1Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_FairValueInputsLevel2Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_FairValueInputsLevel2Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-12-302021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-12-30</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember_custom_ACIAndIDMOMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">CODX:ACIAndIDMOMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_srt_MinimumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_srt_MaximumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-12-302021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-12-30</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-12-302021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-12-30</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_MeasurementInputSharePriceMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputSharePriceMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_MeasurementInputSharePriceMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputSharePriceMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_MeasurementInputStrikePriceMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputStrikePriceMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_MeasurementInputStrikePriceMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputStrikePriceMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_MeasurementInputPriceVolatilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputPriceVolatilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_MeasurementInputPriceVolatilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputPriceVolatilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_MeasurementInputRiskFreeInterestRateMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputRiskFreeInterestRateMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_MeasurementInputRiskFreeInterestRateMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputRiskFreeInterestRateMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_MeasurementInputExpectedTermMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputExpectedTermMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_MeasurementInputExpectedTermMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputExpectedTermMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_MeasurementInputCostOfCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputCostOfCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_MeasurementInputCostOfCapitalMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputCostOfCapitalMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_MeasurementInputDiscountRateMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputDiscountRateMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_MeasurementInputDiscountRateMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputDiscountRateMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_MeasurementInputEquityVolatilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputEquityVolatilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_MeasurementInputEquityVolatilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputEquityVolatilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_MeasurementInputAssetVolatilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputAssetVolatilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_MeasurementInputAssetVolatilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputAssetVolatilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_MeasurementInputRevenueVolatilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputRevenueVolatilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_MeasurementInputRevenueVolatilityMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputRevenueVolatilityMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_EquipmentMember_srt_MinimumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_EquipmentMember_srt_MaximumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_EquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_EquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_srt_MinimumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdsAndLeaseholdImprovementsMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_srt_MaximumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdsAndLeaseholdImprovementsMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_LeaseholdImprovementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_OfficeEquipmentMember_srt_MinimumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_OfficeEquipmentMember_srt_MaximumMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_OfficeEquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_OfficeEquipmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_InProcessResearchAndDevelopmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InProcessResearchAndDevelopmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_InProcessResearchAndDevelopmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InProcessResearchAndDevelopmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_NoncompeteAgreementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_NoncompeteAgreementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_InProcessResearchAndDevelopmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InProcessResearchAndDevelopmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_InProcessResearchAndDevelopmentMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InProcessResearchAndDevelopmentMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_NoncompeteAgreementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_NoncompeteAgreementsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_country_US">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_country_US">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_RestOfWorldMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">CODX:RestOfWorldMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_RestOfWorldMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">CODX:RestOfWorldMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_country_US_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_country_US_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_RestOfWorldMember_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">CODX:RestOfWorldMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_RestOfWorldMember_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">CODX:RestOfWorldMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_WarrantMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_EmployeeStockOptionMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-08-31_custom_TwoThousandFifteenLongTermIncentivePlanMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">CODX:TwoThousandFifteenLongTermIncentivePlanMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-08-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_TwoThousandFifteenLongTermIncentivePlanMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">CODX:TwoThousandFifteenLongTermIncentivePlanMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_StockOptionsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">CODX:StockOptionsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_StockOptionsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">CODX:StockOptionsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_custom_StockOptionsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">CODX:StockOptionsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_custom_StockOptionsMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">CODX:StockOptionsMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_RestrictedStockUnitsRSUMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_WarrantMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-12-31_us-gaap_WarrantMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_custom_ThirdPartiesMember_us-gaap_RestrictedStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">CODX:ThirdPartiesMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_custom_ThirdPartiesMember_us-gaap_RestrictedStockMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">CODX:ThirdPartiesMember</xbrldi:explicitMember>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2020-12-31_us-gaap_RestrictedStockUnitsRSUMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2020-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2021-12-31_us-gaap_RestrictedStockUnitsRSUMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2021-12-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_EmployeeStockOptionMember272309781">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_EmployeeStockOptionMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2022-01-012022-12-31_us-gaap_StockCompensationPlanMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2022-01-01</xbrli:startDate>
        <xbrli:endDate>2022-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="From2021-01-012021-12-31_us-gaap_StockCompensationPlanMember">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
        <xbrli:segment>
          <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember>
        </xbrli:segment>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2021-01-01</xbrli:startDate>
        <xbrli:endDate>2021-12-31</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:context id="AsOf2022-03-31">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001692415</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:instant>2022-03-31</xbrli:instant>
      </xbrli:period>
    </xbrli:context>
    <xbrli:unit id="USD">
      <xbrli:measure>iso4217:USD</xbrli:measure>
    </xbrli:unit>
    <xbrli:unit id="Shares">
      <xbrli:measure>xbrli:shares</xbrli:measure>
    </xbrli:unit>
    <xbrli:unit id="USDPShares">
      <xbrli:divide>
        <xbrli:unitNumerator>
          <xbrli:measure>iso4217:USD</xbrli:measure>
        </xbrli:unitNumerator>
        <xbrli:unitDenominator>
          <xbrli:measure>xbrli:shares</xbrli:measure>
        </xbrli:unitDenominator>
      </xbrli:divide>
    </xbrli:unit>
    <xbrli:unit id="Pure">
      <xbrli:measure>xbrli:pure</xbrli:measure>
    </xbrli:unit>
    <xbrli:unit id="Sqft">
      <xbrli:measure>utr:acre</xbrli:measure>
    </xbrli:unit>
  </ix:resources>
 </ix:header>
</div>


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

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 18pt"><b>UNITED
STATES</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 18pt"><b>SECURITIES
AND EXCHANGE COMMISSION</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 12pt"><b>Washington,
D.C. 20549.</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 18pt"><b>Form
<span id="xdx_90D_edei--DocumentType_c20220101__20221231_z3L7iS74K8P6"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:DocumentType">10-K</ix:nonNumeric></span></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Mark
One)</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_909_edei--DocumentAnnualReport_c20220101__20221231_z1zDoxD0VIwk"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt:booleantrue" name="dei:DocumentAnnualReport">&#9746;</ix:nonNumeric></span>
ANNUAL REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For
the fiscal year ended <b><span id="xdx_907_edei--DocumentPeriodEndDate_c20220101__20221231_zAUi7vOlnR5j"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt:datemonthdayyearen" name="dei:DocumentPeriodEndDate"><span id="xdx_901_edei--CurrentFiscalYearEndDate_c20220101__20221231_zmlZWvpZCIS3"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt:datemonthdayen" name="dei:CurrentFiscalYearEndDate">December 31</ix:nonNumeric></span>, <span id="xdx_902_edei--DocumentFiscalYearFocus_c20220101__20221231_zO38O0dAc7ub"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:DocumentFiscalYearFocus">2022</ix:nonNumeric></span></ix:nonNumeric></span></b></span></p>

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

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90E_edei--DocumentTransitionReport_c20220101__20221231_zwyIvoGeDA4d"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt:booleanfalse" name="dei:DocumentTransitionReport">&#9744;</ix:nonNumeric></span>
TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For
the transition period from_______to_______</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Commission
File Number <b><span id="xdx_90F_edei--EntityFileNumber_c20220101__20221231_z84nB4EQHxng"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityFileNumber">001-38148</ix:nonNumeric></span></b></span></p>

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

<p style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 18pt"><b><span id="xdx_909_edei--EntityRegistrantName_c20220101__20221231_zmwshwRhoN1k"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityRegistrantName">CO-DIAGNOSTICS,
INC.</ix:nonNumeric></span></b></span></p>

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

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 32%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_90C_edei--EntityIncorporationStateCountryCode_c20220101__20221231_zBjOH8avBr0c"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt-sec:stateprovnameen" name="dei:EntityIncorporationStateCountryCode">Utah</ix:nonNumeric></span></b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 32%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>3841</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 32%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_90A_edei--EntityTaxIdentificationNumber_c20220101__20221231_z0CLPhO0wMo7"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityTaxIdentificationNumber">46-2609396</ix:nonNumeric></span></b></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(State
        or other jurisdiction of</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">incorporation
    or organization)</span></p></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Primary
        Standard Industrial</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Classification
    Code Number)</span></p></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(I.R.S.
        Employer</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Identification
    Number)</span></p></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span style="text-decoration: underline"><span id="xdx_90F_edei--EntityAddressAddressLine1_c20220101__20221231_zQ0mXnrOpl6e"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityAddressAddressLine1">2401
S. Foothill Drive</ix:nonNumeric></span>, <span id="xdx_907_edei--EntityAddressCityOrTown_c20220101__20221231_zcXnZSbb3u15"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityAddressCityOrTown">Salt Lake City</ix:nonNumeric></span>, <span id="xdx_909_edei--EntityAddressStateOrProvince_c20220101__20221231_zX4cSB593fU8"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt-sec:stateprovnameen" name="dei:EntityAddressStateOrProvince">Utah</ix:nonNumeric></span> <span id="xdx_90D_edei--EntityAddressPostalZipCode_c20220101__20221231_zpp2eF9OFv36"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityAddressPostalZipCode">84109</ix:nonNumeric></span></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Address
of principal executive offices and zip code)</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span style="text-decoration: underline"><span id="xdx_90E_edei--CityAreaCode_c20220101__20221231_zlpECcQqXEPf"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:CityAreaCode">(801)</ix:nonNumeric></span>
<span id="xdx_906_edei--LocalPhoneNumber_c20220101__20221231_zE5Ggt6GcSf7"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:LocalPhoneNumber">438-1036</ix:nonNumeric></span></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Registrant&#8217;s
telephone number including area code)</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Securities
registered pursuant to Section 12(b) of the Act:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 32%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Title
    of each class</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 2%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 22%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Trading
    Symbol(s)</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 2%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 42%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Name
    of each exchange on which registered</b></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90A_edei--Security12bTitle_c20220101__20221231_zUTzPJhlgt53"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:Security12bTitle">Common Stock</ix:nonNumeric></span></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90E_edei--TradingSymbol_c20220101__20221231_z5OHJPsAC3fe"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:TradingSymbol">CODX</ix:nonNumeric></span></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The <span id="xdx_905_edei--SecurityExchangeName_c20220101__20221231_zD1DXk6jQ1x1"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt-sec:exchnameen" name="dei:SecurityExchangeName">Nasdaq</ix:nonNumeric></span> Capital Market</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Securities
registered pursuant to Section 12(g) of the Act: None</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Yes&#160;&#9744;&#160;<span id="xdx_908_edei--EntityWellKnownSeasonedIssuer_c20220101__20221231_zlszdr5XmXJ"><span id="xdx_904_edei--EntityWellKnownSeasonedIssuer_c20220101__20221231_zOTZRutpJkbi"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityWellKnownSeasonedIssuer"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityWellKnownSeasonedIssuer">No</ix:nonNumeric></ix:nonNumeric></span></span>&#160;&#9746;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark if the registrant is not required to file reports pursuant to Section 13 or 15(d) of the Act. Yes&#160;&#9744;&#160;<span id="xdx_90A_edei--EntityVoluntaryFilers_c20220101__20221231_z21tBwHYZJLe"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityVoluntaryFilers">No</ix:nonNumeric></span>&#160;&#9746;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the 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. <span id="xdx_903_edei--EntityCurrentReportingStatus_c20220101__20221231_zJBRquCkLrC8"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityCurrentReportingStatus">Yes</ix:nonNumeric></span> &#9746; No &#9744;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark whether the registrant has submitted electronically and posted on its corporate Web site, if any, every Interactive Data
File required to be submitted and posted pursuant to Rule 405 of Regulation S-T (&#167; 232.405 of this chapter) during the preceding
12 months (or such shorter period that the registrant was required to submit and post such files). <span id="xdx_90F_edei--EntityInteractiveDataCurrent_c20220101__20221231_zwNa44jGhKQ2"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:EntityInteractiveDataCurrent">Yes</ix:nonNumeric></span> &#9746; No &#9744;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">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. See 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.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 10%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 35%; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Large accelerated
    filer</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 10%; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9744;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 35%; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Accelerated
    filer</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 10%; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9744;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_900_edei--EntityFilerCategory_c20220101__20221231_zR1ftynLc46f"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt-sec:entityfilercategoryen" name="dei:EntityFilerCategory">Non-accelerated filer</ix:nonNumeric></span></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9746;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Smaller reporting company</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_903_edei--EntitySmallBusiness_c20220101__20221231_zADXXr94WABh"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt:booleantrue" name="dei:EntitySmallBusiness">&#9746;</ix:nonNumeric></span></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Emerging growth company</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_901_edei--EntityEmergingGrowthCompany_c20220101__20221231_z2HaqdB4XMb1"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt:booleanfalse" name="dei:EntityEmergingGrowthCompany">&#9744;</ix:nonNumeric></span></span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">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. &#9744;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark whether the registrant has filed a report on and attestation to its management&#8217;s assessment of the effectiveness
of its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered
public accounting firm that prepared or issued its audit report. <span id="xdx_908_edei--IcfrAuditorAttestationFlag_c20220101__20221231_zpJWf0g6PES9"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt:booleanfalse" name="dei:IcfrAuditorAttestationFlag">&#9744;</ix:nonNumeric></span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">If
securities are registered pursuant to Section 12(b) of the Act, indicate by check mark whether the financial statements of the registrant
included in the filing reflect the correction of an error to previously issued financial statements. &#9744;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark whether any of those error corrections are restatements that required a recovery analysis of incentive-based compensation
received by any of the registrant&#8217;s executive officers during the relevant recovery period pursuant to &#167;240.10D-1(b).
&#9744;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Indicate
by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Act). Yes &#9744; <span id="xdx_907_edei--EntityShellCompany_c20220101__20221231_zdbTIlB3ygZ4"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt:booleanfalse" name="dei:EntityShellCompany">No</ix:nonNumeric></span> &#9746;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which
the common stock was last sold as of the last business day of the registrant&#8217;s most recently completed second fiscal quarter was
approximately $<span id="xdx_906_edei--EntityPublicFloat_iI_c20220630_zhw35F3qZD5g"><ix:nonFraction name="dei:EntityPublicFloat" contextRef="AsOf2022-06-30" format="ixt:numdotdecimal" decimals="0" unitRef="USD">187,000,000</ix:nonFraction></span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of March 14, 2023, there were <span id="xdx_90B_edei--EntityCommonStockSharesOutstanding_iI_pid_c20230314_zpRPsyk3usc5"><ix:nonFraction name="dei:EntityCommonStockSharesOutstanding" contextRef="AsOf2023-03-14" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">30,922,607</ix:nonFraction></span> shares of common stock, par value $0.001 per share, outstanding.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 1 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%">&#160;</td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt">&#160;</div>
    <!-- Field: /Page -->

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Table
of Contents</b></span></p>

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 0.5in; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Page</b></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td colspan="2" style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><a href="#ak_001">PART I</a></b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    1.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#ak_002">Business.</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">4</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    1A.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_003"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Risk Factors.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    1B.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_004"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Unresolved Staff Comments.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">23</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    2.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_005"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Properties.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">24</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    3.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_006"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Legal Proceedings.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">24</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    4.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_007"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Mine Safety Disclosures.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">25</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td colspan="2" style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><a href="#ak_008">PART II</a></b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    5.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_009"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Market for Registrant&#8217;s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">26</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    6.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_010"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">[Reserved.]</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">27</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    7.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_011"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">27</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    7A.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_013"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Quantitative and Qualitative Disclosures About Market Risk.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">32</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    8.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_012"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Financial Statements and Supplementary Data.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">33</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    9.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_014"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Changes in and Disagreements with Accountants on Accounting and Financial Disclosure.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">57</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    9A.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_015"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Controls and Procedures.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">57</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    9B.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_016"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Other Information.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">58</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    9C.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_017"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Disclosure Regarding Foreign Jurisdictions that Prevent Inspections.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">58</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td colspan="2" style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><a href="#ak_018">PART III</a></b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    10.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_019"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Directors, Executive Officers and Corporate Governance.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">5</span>8</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    11.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_020"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Executive Compensation.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center">64</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    12.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_021"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">68</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    13.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_022"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Certain Relationships and Related Transactions, and Director Independence.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">69</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    14.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_023"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Principal Accountant Fees and Services.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">69</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td colspan="2" style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><a href="#ak_024">PART IV</a></b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Item
    15.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="#ak_025"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Exhibits and Financial Statement Schedules.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">70</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 2; Options: NewSection; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->2<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_001"></span>PART
I</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Forward-Looking
Statements</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">This
Annual Report on Form 10-K contains &#8220;forward-looking statements&#8221; that involve risks and uncertainties. All statements other
than statements of historical fact contained in this Annual Report and the documents incorporated by reference herein, including statements
regarding future events, our future financial performance, business strategy, and plans and objectives of management for future operations,
are forward-looking statements. We have attempted to identify forward-looking statements by terminology including &#8220;anticipates,&#8221;
&#8220;believes,&#8221; &#8220;can,&#8221; &#8220;continue,&#8221; &#8220;could,&#8221; &#8220;estimates,&#8221; &#8220;expects,&#8221;
&#8220;intends,&#8221; &#8220;may,&#8221; &#8220;plans,&#8221; &#8220;potential,&#8221; &#8220;predicts,&#8221; &#8220;should,&#8221;
or &#8220;will&#8221; or the negative of these terms or other comparable terminology. Although we do not make forward looking statements
unless we believe we have a reasonable basis for doing so, we cannot guarantee their accuracy. These statements are only predictions
and involve known and unknown risks, uncertainties and other factors which may affect our or our industry&#8217;s actual results, levels
of activity, performance or achievements expressed or implied by these forward-looking statements. Moreover, we operate in a highly regulated,
very competitive, and rapidly changing environment. New risks emerge from time to time, and it is not possible for us to predict all
risk factors, nor can we address the impact of all factors on our business or the extent to which any factor, or combination of factors,
may cause our actual results to differ materially from those contained in any forward-looking statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have based these forward-looking statements largely on our current expectations and projections about future events and financial trends
that we believe may affect our financial condition, results of operations, business strategy, short term and long-term business operations,
and financial needs. These forward-looking statements are subject to certain risks and uncertainties that could cause our actual results
to differ materially from those reflected in the forward-looking statements. Factors that could cause or contribute to such differences
include, but are not limited to, those discussed in this Annual Report, and in particular, the risks discussed under &#8220;<b>Item 1,
Business,&#8221; &#8220;Item 1A, Risk Factors,&#8221; and &#8220;Item 7, Management&#8217;s Discussion and Analysis of Financial Condition
and Results of Operations,&#8221;</b> and those discussed in other documents we file with the Securities and Exchange Commission (the
&#8220;SEC&#8221;). In light of these risks, uncertainties and assumptions, the forward-looking events and circumstances discussed in
this Annual Report may not occur as described and actual results could differ materially and adversely from those anticipated or implied
in the forward-looking statement.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Important
factors that could cause actual results to differ materially from those in the forward-looking statements include, without limitation:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="width: 0.5in">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the
    results of clinical evaluations and the regulatory approval process;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td>&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td>&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">market
    acceptance of any products that may be approved for commercialization;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td>&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td>&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">our
    ability to protect our intellectual property rights;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td>&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td>&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the
    impact of any infringement actions or other litigation brought against us;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td>&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td>&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">competition
    from other providers and products;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td>&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td>&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">our
    ability to develop and commercialize new and improved products and services;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td>&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td>&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">changes
    in government regulation;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td>&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td>&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">and
    other factors (including the risks contained in the section entitled &#8220;Risk Factors&#8221; in other documents we file with the
    SEC) relating to our industry, our operations and results of operations.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Should
one or more of these risks or uncertainties materialize, or should the underlying assumptions prove incorrect, actual results may differ
significantly from those anticipated, believed, estimated, expected, intended or planned.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Given
these risks and uncertainties, readers are cautioned not to place undue reliance on any forward-looking statements. Forward-looking statements
contained in this Annual Report speak only as of the date of this Annual Report. We undertake no obligation to update any forward-looking
statements as a result of new information, events or circumstances or other factors arising or coming to our attention after the date
hereof.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 3; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->3<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
used in this Annual Report, the terms &#8220;we&#8221;, &#8220;us&#8221;, &#8220;our&#8221;, &#8220;Company&#8221; and &#8220;Co-Diagnostics&#8221;
means Co-Diagnostics, Inc., a Utah corporation and its consolidated subsidiaries (the &#8220;Company&#8221;), unless otherwise indicated.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_002"></span>ITEM
1: BUSINESS</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Overview</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Co-Diagnostics,
Inc., a Utah corporation (the &#8220;Company&#8221; or &#8220;CODX&#8221;), develops, manufactures and sells reagents used for diagnostic
tests that function via the detection and/or analysis of nucleic acid molecules (DNA or RNA), including robust and innovative molecular
tools for detection of infectious diseases, liquid biopsy for cancer screening, and agricultural applications. In connection with the
sale of our tests we may sell diagnostic equipment from other manufacturers as self-contained lab systems (which we refer to as the &#8220;MDx
Device&#8221;). We are also developing a unique, groundbreaking portable PCR device and proprietary test cups (the &#8220;Co-Dx PCR Home&#8482;
platform&#8221;) that have been designed to bring affordable, reliable polymerase chain reaction (&#8220;PCR&#8221;) to patients in point-of-care
and even at-home settings. This platform is subject to U.S. Food and Drug Administration (&#8220;FDA&#8221;) review and is not available
for sale at the time of this filing. There is no guarantee that our Co-Dx PCR Home platform will receive the necessary regulatory approvals
for commercialization, or that, if regulatory approval is received, we will be able to successfully commercialize this platform.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
diagnostics systems enable dependable, low-cost, molecular testing for organisms and genetic diseases by automating or simplifying historically
complex procedures in both the development and administration of tests. CODX&#8217;s technical advance involves a novel, patented approach
to PCR test design of primer and probe structure (&#8220;CoPrimers&#8482;&#8221;) that eliminates one of the key vexing issues of PCR
amplification: the exponential growth of primer-dimer pairs (false positives and false negatives) which adversely interferes with identification
of the target DNA/RNA.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
believe our proprietary molecular diagnostics technology is paving the way for innovation in disease detection and life sciences research
through our enhanced detection of genetic material. For various reasons, including owning our own platform, we believe we will be able
to accomplish this faster and more economically than some competitors, allowing for significant margins while still positioning ourselves
as a low-cost provider of molecular diagnostics and screening services.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
addition, continued development has demonstrated the unique properties of our CoPrimer technology that we believe makes it ideally suited
for a variety of applications where specificity is key to optimal results, including multiplexing several targets, enhanced Single Nucleotide
Polymorphism (&#8220;SNP&#8221;) detection and enrichment for next generation sequencing.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
scientists use the complex mathematics of DNA/RNA PCR test design to engineer and optimize PCR tests and to automate algorithms that
rapidly screen millions of possible options to pinpoint the optimum design. Dr. Brent Satterfield, our founder, developed the intellectual
property we use in our business, consisting of the predictive mathematical algorithms and patented molecular structure used in the testing
process, which together represent a major advance in PCR testing systems. CODX technologies are now protected by more than 20 granted
or pending US and foreign patents, as well as certain trade secrets and copyrights. Ownership of our proprietary platform permits us
the advantage of avoiding payment of patent royalties required by other PCR test systems, which may allow the sale of diagnostic PCR
tests at a lower price than competitors, while enabling us to maintain profit margins.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
proprietary test design process involves identifying the optimal locations on the target genes for amplification and pair the locations
with the optimized primer and probe structure to achieve outputs that meet the design input requirements identified from market research.
This is done by following planned and documented processes, procedures and testing. In other words, we use the data resulting from our
tests to verify whether we succeeded in designing what we intended. Verification involves a series of testing that concludes that the
product is ready to proceed to validation in an evaluation either in our laboratory or in an independent laboratory setting using initial
production tests to confirm that the product as designed meets the user needs.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
may either sell or lease the MDx Device to labs and diagnostic centers, through sale or lease agreements, and sell the reagents that
comprise our proprietary tests to those laboratories and testing facilities.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 4; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->4<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Using
our proprietary test design system and proprietary reagents, we have designed and obtained regulatory approval in the European Community
and/or in India to sell PCR diagnostic tests for the detection of COVID-19, influenza, tuberculosis, hepatitis B and C, human papillomavirus,
malaria, chikungunya, dengue, and the Zika virus. In the United States, we obtained Emergency Use Authorization (&#8220;EUA&#8221;) for
our Logix Smart<span style="font-variant: small-caps">&#8482;</span> COVID-19 detection test from the Food and Drug Administration, or
FDA, and we sell that test to qualified labs. In addition, our COVID-19 detection test and certain of our other suite of COVID-19 products
have been approved for sale in countries such as the United Kingdom, Australia and Mexico by the regulatory bodies in those countries
and have been registered for sale in many more countries.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
addition to testing for infectious disease, the technology lends itself to identifying any section of a DNA or RNA strand that describes
any type of genetic trait, which creates several significant applications. We, in conjunction with our customers, are active in designing
and licensing tests that identify genetic traits in plant and animal genomes. We also have three multiplexed tests developed to test
mosquitos for the identification of diseases carried by the mosquitos to enable municipalities to concentrate their efforts in managing
mosquito populations on the specific areas known to be breeding the mosquitos that carry deadly viruses.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.35pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
January 23, 2020, we announced the completion of the principal design work for a PCR test for COVID-19, intended to address the potential
need for detection of the virus. This test features our patented CoPrimers technology, and was designed using our proprietary software
system, following the guidelines published by the World Health Organization (WHO) and Centers for Disease Control (CDC).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
February 24, 2020, we announced that this test had obtained regulatory clearance to be sold as an <i>in vitro</i> diagnostic (&#8220;IVD&#8221;)
for the diagnosis of COVID-19 in markets that accept CE-marking as valid regulatory approval and became available for purchase from our
Utah-based ISO-13485:2016 certified facility.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
commenced sales of the COVID-19 tests in February and March of 2020 to international customers and to date have since sold over 34,000,000
of this and other COVID tests in numerous countries around the world through an expanding distributor network.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">On
April 6, 2020, we announced that we had received an EUA from the FDA allowing us to commence sales of our Logix Smart COVID-19 test to
laboratories certified by the Center for Medicare and Medicaid Services under the Clinical Laboratories Improvements Act (&#8220;CLIA&#8221;)
to accept human samples for diagnostics testing throughout the United States and have sold our Logix Smart COVID-19 test to such CLIA
labs since that time.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.35pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Because
we believe that testing for COVID-19 will continue to be a consideration for public health worldwide, we have initiated the Co-Dx PCR
Home platform to facilitate frequent testing in homes, schools, businesses, and the hospitality industry. We believe this may be accomplished
through the development of a compact, relatively low-cost testing device, easy to use by non-professionals, that can provide PCR test
results in around 30 minutes. The initial project built on this platform, an at-home and point-of-care COVID-19 PCR test, was ultimately
facilitated by our development of a saliva or nasal swab-based PCR test that does not require the RNA/DNA extraction. While we believe
the final result is believed to be approximately equivalent to those processed by a high-complexity clinical laboratory, it our COVID-19
PCR test has the advantages of increased speed and ease of handling thanks to lyophilization (or freeze-drying) of our testing reagents
to allow for stability at room temperatures.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
February 15, 2021, we engaged the services of a group of professionals at Idaho Molecular, Inc (&#8220;IdMo&#8221;) and Advanced Conceptions,
Inc (&#8220;ACI&#8221;), with the expertise to develop the hardware for a device using our CoPrimers as the reagent chemistry. In December
2021, we announced the closing of the acquisitions of IdMo and ACI along with all existing and future assets and intellectual property
related to the platform and device. It is expected that the device and test will be available to homes, schools, offices, and the travel
industry among other locations, at a cost that will allow screening frequently to prevent spread of the COVID-19 virus in the future,
as well as other diseases as additional single- and multiplex tests are developed and validated for use on the device. The device would
also be available to test for other pathogens detectable through saliva or other samples as we develop those tests and offer them to
the marketplace. All such tests will be subject to regulatory approval.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 5; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->5<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
February 22, 2023, we announced that clinical evaluations for the device and its initial test for COVID-19 had begun. Because the evaluations
are dependent on identifying and enrolling a particular number of both symptomatic and asymptomatic COVID-19-positive and -negative patients
at testing sites, the Company did not provide projected timelines for completion at that time.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Infectious
Disease Product Offering</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.35pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify">Using our proprietary test design system and proprietary reagents, we and
CoSara Diagnostics Pvt Ltd (&#8220;CoSara&#8221;), our joint venture for manufacturing in India, design and sell PCR diagnostic tests
for detection of diseases and pathogens such as COVID-19, influenza, tuberculosis, hepatitis B and C, malaria, dengue, human papillomavirus,
chikungunya, and Zika virus, all of which tests have been designed and verified in our laboratories. Our tuberculosis test and Zika test
received a CE Mark in 2018, and a triplex test for Zika, dengue and chikungunya received a CE Mark in 2019, qualifying the tests to be
sold throughout the European community and in most countries in Central and South America. In December 2019, CoSara received a license
to manufacture and sell tuberculosis, hepatitis B, hepatitis C, human papillomavirus 16/18 and malaria tests in India from the Central
Drugs Standard Control Organization (&#8220;CDSCO&#8221;). In February 2020, we received a CE Mark for our Logix Smart COVID-19 test followed
by an EUA by the FDA in April 2020. Also, in April 2020, our COVID-19 test was approved for manufacture and sale in India by the CDSCO
and in Mexico by the INDRE, Mexico&#8217;s equivalent to the United States Center for Disease Control. In August 2020, we received approval
from the Australian Department of Health Therapeutic Goods Division to sell our COVID-19 test in Australia.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
explained above, our Logix Smart COVID-19 test was designed, developed, submitted for regulatory approval and ready to be used as an <i>in
vitro</i> diagnostic or IVD in countries that accept a CE Mark as approval for use of the test in a period of just over 30 days.
This is a real-world example of how the CODX technology can be used in an evolving epidemic or pandemic to get diagnostic tools in
the hands of medical professionals in a timely manner. It can be similarly used to design a test for mutated
strains of the virus should they not be detectable using currently available tests.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.35pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i><span style="text-decoration: underline">Caribbean
and Central and South America</span></i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
began selling PCR diagnostic tests to entities located in South and Central America and the Caribbean in
2018. In some of those countries, there are limited regulatory hurdles, allowing us to begin offering our tests immediately. We have
applied for and received registrations for our tests in many of those countries that require registration, and our distributors in
those countries have provided us with in-country assistance in completing such registrations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
first offered our Zika test in this region because of the demand for such a test, followed by tests for tuberculosis, and our
triplex test for Zika, chikungunya, and dengue. Sales of those tests have not been material, but with the granting of a CE mark for
our Logix Smart COVID-19, we experienced an increase in sales in this region.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i><span style="text-decoration: underline">India</span></i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
January 2017, the Company entered into an agreement to manufacture diagnostics tests for seven infectious diseases with a pharmaceutical
manufacturing company in India and formed CoSara as an Indian joint venture. The agreement provided for the construction of a manufacturing
plant and the manufacture of the tests named above and the joint sales and marketing of those tests in India. We have received a license
for the plant in Ranoli, India to manufacture approved tests and it is being used for testing and manufacturing of our products for the
Indian market.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
mentioned above, the CDSCO has given us the approval for manufacture and sale of the nine tests referred to above, and the Company&#8217;s joint venture has begun manufacture and sale of those tests. The Company has
commenced a reagent rental program in India with thermocyclers purchased from third-party vendors and which we refer to as our MDx Device.
Each of the reagent rental placements requires the purchase of a minimum number of tests per month. The placement of thermocyclers in
India has facilitated the sale of the SaraGene COVID-19 tests in India. The WHO 2019 Global Tuberculosis Report indicates that India
is the country with the highest number of cases of tuberculosis in the world. WHO tuberculosis statistics for India for 2018 give an
estimated incidence figure of 2.69 million cases of tuberculosis for India out of a global incidence of approximately 10.0 million.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 6; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->6<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
March 19, 2020, we announced that CoSara received authorization to begin manufacture and sale of COVID-19 tests in India. Those tests
in India are branded as SaraGene COVID-19 tests and are sold exclusively by CoSara. The Indian government places restrictions on the
price that could be charged for COVID-19 tests which limited the revenue in India more than we experienced in other parts of the world.
At the time of this report, CoSara has received CDSCO clearance for RT-PCR tests for Mycobacterium tuberculosis, malaria, hepatitis B,
hepatitis C (including viral load tests for both hepatitis B and C), human papillomavirus (HPV), a test for high-risk HPV, two COVID-19
assays, chikungunya, dengue, a dengue/chikungunya duplex test, an influenza A/influenza B/COVID-19 (&#8220;ABC&#8221;) multiplex test.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i><span style="text-decoration: underline">Europe</span></i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Molecular
diagnostics, such as our tests, are governed in Europe by the framework for IVDs, which encompasses diagnostic products such as reagents,
instruments and systems intended for use in diagnosis of disease. The regulatory system for some IVDs has historically allowed for a
self-certification procedure, placing heavy responsibility on manufacturers. Non self-certified products were subject to the same standards
as self-certified products but were also subject to audit and review by a notified body prior to receiving approval to be CE-marked.
A CE-marking is a manufacturer&#8217;s declaration that a product meets the requirements of the applicable European Commission directive.
Examples of current obligations include having in place a qualitative manufacturing process, user instructions that are clear and fit
for purpose, and ensuring that the &#8216;physical&#8217; features of devices and diagnostics do not pose any danger. If a product fulfils
these and other related control requirements, it may be CE-marked, as an indication that the product is compliant with EU legislation
and sold in the European Union. We have received CE Marks for six of our tests including for COVID-19, COVID-19 (2 gene test), ABC (a
triplex test for Flu A, Flu B and COVID-19), a DS (Direct Saliva, extraction-free) COVID-19 test, tuberculosis, Zika, and our Zika, dengue,
chikungunya triplex tests. Recently, the European Commission has revised its directive governing the CE- marking of IVDs, which included
reclassifying which IVDs may be self-certified, and which may not. As a result of this change in directive and reclassification, substantially
all of the Company&#8217;s products are now subject to audit and review by a notified body, as well as a more rigorous clinical evaluation
process, prior to receiving approval to be CE-marked.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
are ISO 13485:2016 certified, relating to the design and manufacture of our medical device products. The ISO certification indicates
that we meet the standards required to pursue CE-marking for certain of our products and affix a CE-marking for sales of our products
in countries accepting CE-marking (not in the United States).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i><span style="text-decoration: underline">United
States</span></i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
FDA has granted permission for us to export all of our IVD products. The FDA&#8217;s permission to export was granted under Section 801(e)
of the Federal Food, Drug, and Cosmetic Act, as amended (the &#8220;FDC Act&#8221;). Section 801(e) of the FDA Act covers certain medical
devices that have not yet received an approved Premarket Approval in the United States by the FDA, such as our products. We have not
commenced any Premarket Approval steps with the FDA. Section 801(e) of the FDA Act applies to medical devices that are acceptable to
the importing country and that are manufactured under the FDA&#8217;s Good Manufacturing Practices. We have received EUA for our COVID-19
test, which allows sales to qualified labs in the United States, and facilitates the registration for sale in other countries as well.
Under the FDA&#8217;s existing policy the FDA continues to review a prioritized subset of COVID-19 tests for EUAs, and emphasizes that
traditional device premarket review pathways remain open to all developers. We intend to pursue all appropriate FDA review pathways for
products under development, including traditional premarket review pathways.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Under
our EUA, we are actively selling our Logix Smart COVID-19 test to CLIA certified laboratories in the United States. The CLIA labs are
able to use our test, or to further validate our COVID-19 tests (or other tests) as Laboratory Developed Tests (LDTs), which
refers to a diagnostic test that has been validated for use in the CLIA lab. LDTs may be used by the lab only in that laboratory. CLIA
laboratories develop the performance characteristics, perform the analytical validation for their LDTs and obtain licenses to offer them
as diagnostic services. We are currently marketing our Logix Smart COVID-19 test to CLIA laboratories
throughout the US.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 7; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->7<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Market
Opportunity</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
market opportunity for our tests changed radically with the emergence of the COVID-19 pandemic. Because we were able to respond rapidly
and produce a quality product, <span style="background-color: white">we have been able to build a distribution network that extends to
more than 80 countries with over 50 distributors, most of which have been the sales network that has allowed us to export products throughout
the world.</span> We believe that after the pandemic is brought under control, the network of distributors that we have built in these
extraordinary times will serve us well in sales of other diagnostic tests.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
molecular diagnostics market is a fast-growing portion of the <i>in vitro</i> (test tube-based, controlled environment) diagnostics market.
There are several advantages of PCR tests, such as the ones we market and sell, over other forms of diagnostic testing. These advantages
include higher specificity and sensitivity, the ability to perform multiplex tests and the ability to test for drug resistance or for
individual genes.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Mosquito
Vector Control Services</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
response to market demand, in June 2019 we introduced our first diagnostics tests to be used exclusively to test for mosquito borne pathogens
in mosquito populations. Municipalities in the US and many other countries in the world are concerned about the diseases carried by mosquitos,
which infect the human population. To prevent outbreaks of potentially harmful viruses such as Zika or West Nile from infecting the public,
many municipalities conduct mitigation operations to eliminate the mosquito populations carrying the diseases. Because it is too expensive
and potentially harmful to the environment to spray all mosquito breeding areas, municipalities identify which particular area has mosquitos
that are carrying the harmful viruses. To know where the host mosquitos with the harmful viruses are located, traps are set, mosquitos
collected and then tested to find the areas that most needed spraying. There are over 3,000 mosquito abatement districts throughout the
United States and almost all of them conduct testing to help make the spraying more effective.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
first vector related test was a triplex test that tests for West Nile, western equine and St. Louis encephalitis. We began shipping the
tests in June 2019. We added a second test that tests mosquitos for Zika, chikungunya and dengue in a triplex test. Finally, in November
2019, we completed a test for West Nile, eastern equine and St. Louis encephalitis, specifically for use in the eastern United States.
As a result, mosquito abatement districts can test for three target viruses in one test as compared to performing three different tests
using other market available tests. Our products allow municipalities to obtain test results in a matter of hours, instead of the weeks
they might otherwise have to wait for a central lab to process the mosquito tests.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have sold our Vector Smart&#8482; test products and/or related lab equipment to testing districts in different sections of the country
and are marketing our products through trade shows, electronic and regular mail solicitations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.35pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Liquid
Biopsy for Cancer Screening</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.35pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
enhanced specificity of our technology opens up some unique applications for liquid biopsy, demonstrating its ability to detect small
quantities of mutations associated with cancer within an environment of large amounts of normal DNA, as we position the Company to take
part in this historic and challenging development in human health care.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.35pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: #FEFEFE"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Agricultural
Applications</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.35pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">SNP
detection is also used in the agricultural industry to identify variations in crop genomes to achieve improved seed viability and other
desired characteristics, including drought resistance, disease resistance, pest resistance and higher yield.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.75in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
mid-2017, the Company was first approached by a large agribusiness to evaluate our ability to multiplex certain target genomes. The results
of the development project have successfully demonstrated our ability to not only multiplex the target genomes, but targeted SNP&#8217;s
as well. The project was undertaken in conjunction with the manufacturer of our CoPrimers tests. The results of the project encouraged
the parent of our manufacturer to seek a world-wide licensing arrangement for our CoPrimers in the agricultural industry, which was completed
in October 2018. Pursuant to the exclusive license for the agronomics industry, the licensee pays us a royalty for all CoPrimers sold
to the licensee&#8217;s customers. In January 2019, the licensee formally introduced the product at a large agricultural conference and
has branded the product under the name &#8220;BHQ CoPrimers&#8221;.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 8; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->8<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Additional
Licensing and Assay Development</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
believe the unique properties of our CoPrimers technology make them ideally suited to a variety of applications where sensitivity is
key to optimal results, including multiplexing several targets, enhanced SNP detection and enrichment for next generation sequencing.
Our licensee for our agricultural testing requested an expansion of our license agreement to include test design services for their customers
and potential customers, both in the infectious disease arena as well as for agricultural customers. The license was amended in July
2019 and we expect to derive a license fee from our licensee for its design services. If any of its customers desire to commercialize
the tests designed, they will need to seek a commercial license directly from us. Because of these unique characteristics of CoPrimers,
research companies and institutions have requested that we design diagnostics to locate and identify uncommon gene sequences and SNPs
and create tests for the target sequences in a multiplexed reaction. This application of our technology is in its beginning stages, but
we believe that the results from our initial research indicate a significant step forward in defining the capabilities of our technology,
which we believe can be translated to revenue producing licensing arrangements. However, there can be no guarantee that we will be able
to develop the requested capabilities, or that we will be able to successfully commercialize this application of our technology.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0; text-align: justify"><b>Competitive Advantages of Co-Diagnostics</b></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0"><b>We believe that we have the following competitive advantages:</b></p>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Affordability:
    </i></b>Lower-cost test kits, a low-cost MDx-device, and an affordable Co-Dx PCR Home platform for at-home and point-of-care testing
    (the platform is subject to FDA review and not available for sale at the time of this filing).</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Flexibility:
    </i></b>CODX&#8217;s tests have been designed to run on many customers&#8217; DNA/RNA diagnostic testing machines. Our technology
    is well suited to the new generation of point-of-care testing (&#8220;POCT&#8221;), compact and portable analysis machinery for field,
    clinical and office applications.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Speed</i>:
    </b>We believe our rapid assay design system software provides shorter time to product release. This has been demonstrated with the
    conception, design, product manufacture, clinical verification and submission for a CE Mark for our Logix Smart COVID-19 test being
    approximately 30 days.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Accuracy</i></b>:
    We believe our technology allows us to build tests that are highly sensitive and specific, the two benchmarks for accuracy in PCR
    testing.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Personalized
    Medicine</i>: </b>We project that rising health care costs in developed and developing nations will increasingly require that health
    care systems be patient-specific to eliminate waste, misdiagnoses, and ineffectiveness. A critical component will be accurate, more
    affordable DNA-based diagnostics, especially in at-home and POCT settings, for which we are developing products.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Low-cost
    Provider</i>: </b>Our platform technology obviates the need to pay patent royalties typically required of our competitors, which
    use patented test platforms to design their tests.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Worldwide
    Footprint</i>: </b>With a dynamic technology that encompasses markets worldwide, we anticipate that we can identify the best target
    markets, not only in high burden developing countries but also in developed nations.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Growth
    Industry Category</i>: </b>We believe that real-time PCR testing is the fastest-growing segment of <i>in vitro</i> diagnostic testing.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Combination
    Product Offering</i>: </b>Our sensitive tests can be a well-designed match for a new generation of compact and other small POCT devices
    now entering the market, including our own MDx and Co-Dx PCR Home devices. Used together, we believe these affordable tests and devices
    have the potential to revolutionize the molecular diagnostics industry in cost, speed of test results and simplification.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Multiplexing:
    </i></b>Our existing multiplexed tests demonstrate that our CoPrimer-designed tests are able to test for multiple targets in the
    same sample without the distortion caused by false negatives and false positives that often occur in multiplexed tests.</span></td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<!-- Field: Page; Sequence: 9; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->9<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Intellectual
Property</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">Much
of our future success and value depends on our proprietary technology, and therefore, our patent and intellectual property strategy is
of critical importance. Currently, our flagship CoPrimers technology is covered by two U.S. patents titled &#8220;Cooperative primers,
probes, and applications thereof&#8221; as well as by granted and pending foreign counterparts. We have another three U.S. patents directed
to our earlier work in primer and assay designs. For more recent works, we have filed international and U.S. patent applications directed
to &#8220;Methods and Compositions for Next Generation Sequencing (NGS) Library Preparation,&#8221; &#8220;Allele-Specific Design of
Cooperative Primers for Improved Nucleic Acid Variant Genotyping,&#8221; &#8220;Methods and Compositions Related to Cooperative Primers
and Reverse Transcription,&#8221; and &#8220;Systems, Methods, and Apparatus for Automated Self-Contained Biological Analysis&#8221;
which is the basis of our at-home and point-of-care PCR system. We intend to continue building our patent portfolio as development continues
and resources are available.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">We
also protect some of our technology and know-how as trade secrets and, where appropriate, we use and register trademarks to protect and
strengthen our products and proprietary brands. All trademarks, trade/product names, graphics and logos of Co-Diagnostics contained herein
are trademarks of Co-Diagnostics or its subsidiary, as applicable, in the U.S. and/or other countries. Solely for convenience, we may
refer to trademarks in this Annual Report on Form 10-K without the &#8482; or &#174; symbols, but such references are not intended to
indicate, in any way, that we will not assert, to the fullest extent permitted by law, our rights to our trademarks.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Major
Customers</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">We
had certain customers which were each responsible for generating 10% or more of our total revenue for the years ended December 31, 2022
and 2021, respectively. One customer accounted for approximately 37% of total revenue for the year ended December 31, 2022 and two customers
together accounted for approximately 48% of total revenue for the year ended December 31, 2021. These customers may not account for the
same percentage of sales in future periods. </span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">If we were
to sell nothing to those customers in the future, it would have a material adverse effect on our financial condition unless we were able
to replace those customers with others.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Competition</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
molecular diagnostics industry is extremely competitive. There are many firms that provide some or all of the products we provide and
provide many diagnostic tests that we have yet to develop. Many of these competitors are larger than us and have significantly greater
financial resources. Because we are more recently established, many of our competitors have a competitive advantage in the diagnostic
testing industry because they also have other lines of business in the pharmaceutical industry from which they derive revenues and for
which they are well known and respected in the medical profession. We will need to overcome the disadvantage of being perceived as a
start up with no significant recognition from the medical and testing professionals, although we believe this is changing as we continue
to market our Logix Smart COVID-19 tests and other tests in the United States to well-known and successful laboratories. Many of these
competitors already have an established customer base with industry standard technology, which we must overcome to be successful. In
the diagnostic testing and POCT industries, we compete with such companies as BioMerieux, Siemens, Qiagen, Cue Health, Lumira Dx and
Cepheid and with such pharmaceutical companies as Abbott Laboratories, Becton Dickinson and Johnson and Johnson.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 10; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->10<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Competition
has been particularly intense in the market for COVID-19 diagnostic tests. Numerous companies in the United States and internationally
have announced their intention to offer new products, services and technologies that could be used in substitution for our Logix Smart
COVID-19 tests. Many of those competitors are significantly larger, and have substantially greater financial, engineering and other resources,
than our company. Existing and potential competitors in the market for COVID-19 diagnostic tests include developers of serological, antigen
and molecular tests. We also compete with companies from Asia in certain markets who are willing to sell their tests for much less than
we sell our tests, which creates competitive price pressure on us in certain regions, particularly Asia and Latin America.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
expect competition to continue to increase as other established and emerging companies enter the market, as customer requirements evolve,
and as new products, services and technologies are introduced. The entrance of new competitors is being encouraged by governmental authorities,
who are offering funding to support development of testing solutions for COVID-19. Some of our existing or new competitors may have strong
relationships with current and potential customers, including governmental authorities, and, as a result, may be able to respond more
quickly to new or changing regulatory requirements, new or emerging technologies, and changes in customer requirements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Government
Regulation</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the United States, we are regulated by the FDA and our products must be approved, cleared, or authorized by the FDA before we are allowed
to sell our tests in the United States as <i>in vitro</i> diagnostics. The FDA granted us an EUA to manufacture and sell our Logix Smart
COVID-19 test to CLIA labs in the United States. We are ISO 13485:2016 certified, relating to the design and manufacture of our medical
device products. Being ISO certified greatly facilitates our applications for CE-Marking, which allows us to sell any CE Marked test
in most countries in Europe, South America and Asia, depending on the country and following that country&#8217;s registration process.
We currently have CE Markings issued for our Logix Smart COVID-19 test, tuberculosis test, our Zika virus test, a triplex test that tests
for Zika, dengue, and chikungunya simultaneously, a triplex &#8220;ABC&#8221; test that identifies and distinguishes between Flu A, Flu
B and Covid-19, our SARS-CoV-2 2-gene multiplex test, and our DS (Direct Saliva, extraction-free) COVID-19 test. In addition, our Logix
Smart COVID-19 has received the required license to manufacture and sell in India from India&#8217;s CDSCO, and The National Epidemiology
Institute in Mexico evaluated our Logix Smart COVID-19 and ABC tests and approved them for sale in Mexico. We have also received approval
to sell in Australia. We are in the process of registering for sale our Logix Smart COVID-19 and other tests in a number of major countries
around the world.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Employees</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2022, we had 145 full-time and part-time employees at our executive offices and lab facilities in Salt Lake City, Utah.
We have engaged independent contractors in India to promote the use of our products and develop outlets for products and employ the services
of independent sales representatives on an &#8220;as needed&#8221; basis.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We consider our people and the way we work to support each other and serve
our customers to be critical to our success. The key human capital measures and objectives that we focus on in managing our business are:
maintaining a strong and collaborative company culture, increasing our diversity, inclusion and belonging, offering fair and competitive
compensation and benefits, investing in people and organizational development, protecting and enriching employee health and wellness,
and sustaining a culture of respectful and effective communications.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Organizational
History and Corporate Information</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
were incorporated as Co-Diagnostics, Inc., in Utah on April 18, 2013. Our principal executive office is located at 2401 S. Foothill Drive,
Salt Lake City, Utah 84109. Our telephone number is (801) 438-1036. Our web address is <span style="text-decoration: underline">www.codiagnostics.com</span>. The contents of
our website are not incorporated by reference in this Annual Report.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 11; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->11<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_003"></span>ITEM
1A. RISK FACTORS</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Risks
Related to Our Business and Industry</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
have limited commercial history upon which to base our prospects and are not certain that we will achieve profitability in the future.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have a limited operating history. We began operations in April 2013. Our accumulated retained earnings were $39.9 million and $54.2 million
as of December 31, 2022 and 2021, respectively. We were able to achieve net income during the calendar year ending December 31, 2021
due to the high demand for our Logix Smart COVID-19 and other COVID-19 tests during the COVID pandemic. During the calendar year ending
December 31, 2022 we experienced a decline in demand for our Logix Smart COVID-19 and other COVID-19 tests and operated at a net loss
during the period. We do not have any way of predicting when or if we will achieve profitability again. Potential investors should be
aware of the difficulties normally encountered by a new enterprise, many of which are beyond our control, including substantial risks
and expenses in the course of developing new diagnostic tests, establishing or entering new markets, organizing operations and marketing
procedures. The likelihood of our success must be considered in light of these risks, expenses, complications and delays, and the competitive
environment in which we operate. There is, therefore, nothing at this time upon which to base an assumption that our business plan will
prove successful, and we may not be able to generate significant revenue, raise additional capital or operate profitably. We will continue
to encounter risks and difficulties frequently experienced by early commercial stage companies, including scaling up our infrastructure
and headcount, and may encounter unforeseen expenses, difficulties or delays in connection with our growth. In addition, as a result
of the start-up nature of our business, we expect to continue to sustain substantial operating expenses and may not be able to continue
generating sufficient revenues to cover expenditures. Any investment in our company is therefore highly speculative and could result
in the loss of any investment.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Our
future success is dependent on demand for COVID-19 and other infectious disease diagnostics and upon our ability to develop and market
other commercially accepted diagnostic tests and our &#8220;at-home&#8221; and POCT platforms.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
future success will depend, in part, on the continued market for COVID-19 tests, our ability to develop and sell sufficient quantities
of other diagnostics tests, and our ability to successfully obtain regulatory approval for and profitably market our Co-Dx PCR Home at-home
and POCT platform. Attracting new customers and distribution networks requires substantial time and expense. Any failure to obtain regulatory
approval for our product candidates and to increase sales of our diagnostic tests in sufficient quantities to achieve profitability in
a timely manner would adversely affect our operating results. Many factors could affect the market acceptance and commercial success
of any of our diagnostic tests and devices, including:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our ability to develop
    additional infectious disease diagnostic tests for which there is a commercial market;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our ability to obtain regulatory
    clearance to commercialize our product candidates; </span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">our ability to convince
    our potential customers of the advantages and economic value of our tests over competing technologies and diagnostic tests;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the breadth of our test
    menu relative to competitors;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">changes to policies, procedures
    or currently accepted best practices in clinical diagnostic testing;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the extent and success
    of our marketing and sales efforts; and</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">our ability to manufacture
    in quantity our commercial diagnostic tests and meet demand in a timely fashion.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
may not realize anticipated revenue from our Logix Smart COVID-19 and other COVID-19 tests.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; text-align: justify; margin-bottom: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Currently,
our business is substantially dependent on sales of our Logix Smart COVID-19 and other COVID-19 tests. Other companies are working to
produce or have produced rapid tests for COVID-19 which may lead to the diversion of customers, including governmental and quasi-governmental
entities, away from us and toward other companies. Moreover, the dangers posed by COVID-19 may subside over time. A number of preventative
vaccines have been approved for use in human populations by regulatory agencies in the U.S. and around the world. The uptake of these
vaccines will likely limit the spread of COVID-19 and potentially reduce the market size for COVID-19 testing.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; text-align: justify; margin-bottom: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; text-align: justify; margin-bottom: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
expect that, if and when the current COVID-19 pandemic subsides, there could be significantly reduced demand for testing, and thus, for
our Logix Smart COVID-19 and other COVID-19 tests. We have seen a reduction in the prevalence of COVID-19 since the height of the pandemic,
and in 2022 experienced a significant decrease in revenue from our COVID-19 testing products. Revenues relating to our COVID-19 testing
products could decline in the future if the prevalence of COVID-19 remains low and as attention from governments and individuals to COVID-19
wanes.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; text-align: justify; margin-bottom: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; text-align: justify; margin-bottom: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Further,
if the COVID-19 pandemic becomes a seasonal virus or experiences fluctuations in prevalence, we could&#160;experience fluctuations in
our revenues associated with our COVID-19 tests. While there is still demand for COVID-19 testing products, there is no guarantee that
current or anticipated demand will continue, or if demand does continue, that we will be able to produce our COVID-19 tests in sufficient
quantities to meet demand. A significant decline in demand for our COVID-19 testing products without a corresponding increase in our
other businesses could have a material, adverse effect on our results of operations, cash flow and financial position.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i></i></b></span></p>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>The
diagnostic market is highly competitive, and we may not be able to compete effectively against the larger, well-established companies
that dominate this market or emerging and small innovative companies that may seek to obtain or increase their share of the market.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
markets for diagnostic products are intensely competitive, and many of our competitors are much larger and have substantially more financial
and human resources than we do. Many have long histories and strong reputations within the industry, and a relatively small number of
companies dominate these markets.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">These
companies enjoy significant competitive advantages over us, including:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">broad product
    offerings, which address the needs of health care providers in a wide range of applications;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">products that are supported
    by long-term clinical data;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">greater experience in,
    and resources for, launching, marketing, distributing and selling products, including strong sales forces and established distribution
    networks;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">extensive intellectual
    property portfolios and greater resources for patent protection;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">greater financial and other
    resources for product research and development;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">greater experience in obtaining
    and maintaining FDA and other regulatory clearances and approvals for products and product enhancements;</span></td></tr>
</table>

<p style="margin: 0">&#160;</p>

<p style="margin-top: 0; margin-bottom: 0"></p>

<!-- Field: Page; Sequence: 12; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->12<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="margin-top: 0; margin-bottom: 0">&#160;</p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">established manufacturing
    operations and contract manufacturing relationships;</span></td></tr>

<tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">&#160;</td></tr>
<tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">significantly greater name
    recognition and widely recognized trademarks; and</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">established relationships
    with healthcare providers and payers.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
products and any product candidates that we may introduce into the market may not enable us to overcome the competitive advantages of
these large and dominant companies. In addition, even if we successfully introduce additional product candidates into the market, emerging
and small innovative companies may seek to increase their market share and they may eventually possess competitive advantages, which
could adversely impact our business. Our competitors may also employ pricing strategies that could adversely affect the pricing of our
products.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
depend on a limited number of third-party suppliers for key raw materials used in the manufacturing of our products, and the loss of
these third-party suppliers or their inability to supply us with adequate raw materials could harm our business.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
rely on a limited number of third-party suppliers for the raw materials required for the production of our diagnostic products and product
candidates. Our dependence on a limited number of third-party suppliers involves several risks, including limited control over pricing,
availability, quality, and delivery schedules for raw materials. We have no supply agreements in place with any of our suppliers and
cannot be certain that our current suppliers will continue to provide us with the quantities of raw materials that we require or that
satisfy our anticipated specifications and quality requirements. Any supply interruption in limited or single sourced raw materials could
materially harm our ability to manufacture our products until a new source of supply, if any, could be identified and qualified. We may
be unable to find a sufficient alternative supply channel within a reasonable time or on commercially reasonable terms. Any performance
failure on the part of our suppliers could delay the production of our products and product candidates and delay the development and
commercialization of our product candidates, including limiting supplies necessary for commercial sale, clinical trials and regulatory
approvals, which could have a material adverse effect on our business.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>In
order to be successful, we must expand our available product lines by commercializing new product candidates, but we may not be able
to do so in a timely fashion and at expected costs, or at all.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Although
we are currently manufacturing diagnostic kits for commercialization, in order to be successful, we will need to expand our product lines
to include other diagnostic products. To succeed in our commercialization efforts, we must effectively continue product development and
testing, find new strategic partners, obtain regulatory clearances and approvals, and enhance our sales and marketing capabilities. Because
of these uncertainties, there is no assurance that we will succeed in bringing any of our current or future product candidates to market.
If we fail in bringing our product candidates to market, or experience delays in doing so, we will not generate revenues as planned and
will need to curtail operations or seek additional financing earlier than otherwise anticipated.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
are dependent on our senior management team, scientific team, and external advisors, and the loss of any of them could harm our business,
including by adversely affecting our ability to effectuate our business strategy.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
members of our current senior management team may not be able to successfully implement our strategy. In addition, we have not entered
into employment agreements with any of the members of our senior management team. There are no assurances that the services of any of
these individuals will be available to us for any specified period of time. The successful integration of our senior management team,
the loss of members of our senior management team, scientific team and key external advisors, or our inability to attract or retain other
qualified personnel or advisors could have a material adverse effect on our business, financial condition and results of operations.
We may not have a sufficient number of qualified personnel to effectuate our business strategy, which could have a material adverse effect
on our business, financial condition and results of operations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>


<!-- Field: Page; Sequence: 13; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->13<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>If
we experience significant disruptions in our information technology systems, our business, results of operations and financial condition
could be adversely affected.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
efficient operation of our business depends on our information technology systems. We rely on our information technology systems to effectively
manage our sales and marketing, accounting and financial functions; manufacturing processes; inventory; scientific and product development
functions; and our research and development functions. As such, our information technology systems are vulnerable to damage or interruption
including from earthquakes, fires, floods and other natural disasters; terrorist attacks and attacks by computer viruses or hackers;
power losses; and computer systems, or Internet, telecommunications or data network failures. The failure of our information technology
systems to perform as we anticipate or our failure to effectively implement new systems could disrupt our entire operation and could
result in decreased sales, increased overhead costs, excess inventory and product shortages, all of which could have a material adverse
effect on our reputation, business, results of operations and financial condition.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Cyber
security risks and the failure to maintain the integrity of company, employee or guest data could expose us to data loss, litigation
and liability, and our reputation could be significantly harmed.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
and third-party service providers collect and retain large volumes of data, including personally identifiable information regarding clinical trial participants
and others, for business purposes, including for regulatory, research and development and commercialization purposes, and our collaborators&#8217;
various information technology systems enter, process, summarize and report such data. We also maintain personally identifiable information
about our employees. The integrity and protection of our company, employee and clinical data is critical to our business. We are subject
to significant data security and privacy laws and regulations. These regulations impose significant requirements on how we maintain,
use, and protect such information. Maintaining compliance with these evolving regulations and requirements could be difficult and may
increase our expenses. In addition, a penetrated or compromised data system or the intentional, inadvertent or negligent release or disclosure
of data could result in theft, loss or fraudulent or unlawful use of company, employee or clinical data which could harm our reputation,
disrupt our operations, or result in remedial and other costs, fines or lawsuits.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Risks
Related to Regulatory Approval of Our Products and Other Government Regulations</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
received Emergency Use Authorization or EUA and intend to seek additional and/or amended EUAs for our COVID-19 test. The FDA may not
timely grant any additional or amended EUAs, if at all. For our existing EUA and any new EUA, the FDA may revoke any EUA where it is
determined that the underlying health emergency no longer exists or warrants such authorization, which would adversely impact our ability
to market our COVID-19 test in the United States.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
FDA has the authority to grant an EUA to allow unapproved medical products to be used in an emergency to diagnose, treat or prevent serious
or life-threatening diseases or conditions when there are no adequate, approved and available alternatives. On January 31, 2020, the
Secretary of the U.S. Department of Health and Human Services, or U.S. HHS, issued a declaration of a public health emergency related
to COVID-19. On February 4, 2020, U.S. HHS determined that COVID-19 represents a public health emergency that has a significant potential
to affect national security or the health and security of U.S. citizens living abroad and, subsequently, declared on March 24, 2020,
that circumstances exist to justify the authorization of emergency use of medical devices, including alternative products used as medical
devices, during the COVID-19 pandemic, subject to the terms of any authorization as issued by the FDA. On February 29, 2020, the FDA
issued an immediately in effect guidance with policy specific to development of <i>in vitro</i> diagnostic tests during the COVID-19
public health emergency. This guidance was updated on March 16, 2020, May 4, 2020 and May 11, 2020. It is uncertain whether the widespread
availability of approved and effective vaccinations could expedite or influence any such decision making with respect to the underlying
health emergency.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 20pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
April 3, 2020, we received an EUA from the FDA for our Logix Smart Coronavirus Disease 2019 (COVID-19) kit for use on individuals who
are suspected of COVID-19 by their healthcare provider. <span style="background-color: white">We cannot predict how long the EUA for
our COVID-19 test will remain in place.</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 20pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">There
can be no assurances that the FDA will authorize any request for additional and/or amended EUAs and if we do not receive the authorization,
our business, financial condition, results of operations and future growth prospects could be materially and adversely affected.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 20pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 14; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->14<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
FDA may revoke an EUA where it is determined that the underlying health emergency no longer exists or warrants such authorization. The
FDA may take such a position at any time and without notice and, therefore, we cannot predict how long our EUAs will remain in place.
The FDA may also revoke an EUA when the circumstances justifying its issuance no longer exist, such as when an alternative is authorized
for marketing through the standard procedures, including through a 510(k) clearance.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 20pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">FDA
policies regarding diagnostic tests, therapies and other products used to diagnose, treat or mitigate COVID-19 remain in flux as the
FDA responds to new and evolving public health information and clinical evidence. Changes to FDA regulations or requirements could require
changes to our authorized test, necessitate additional measures, or make it impractical or impossible for us to market our test. The
revocation of an EUA, if granted, could necessitate that we pursue the lengthy and expensive 510(k) clearance process, if available,
or another similarly burdensome marketing authorization process, such as a de novo classification. Indeed, FDA has recommended that manufacturers
of tests subject to an EUA pursue pre-market submissions such as a 510(k), de novo classification, or pre-market approval, or PMA, as
applicable, during the declared public health emergency so that their devices can remain on the market after the emergency terminates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">If
either of our existing EUAs is revoked prior to us having received regulatory approval to commercialize our COVID-19 test through a traditional
pathway, we may not be able to obtain required clearances or approvals in a timely manner, or at all, and one or more of our competitors
may obtain the necessary clearances or approvals for their products before we do. In addition, we would be required to cease our commercialization
efforts, which would substantially and negatively impact our business. As a result, any such revocation could adversely impact our business,
financial condition and results of operations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 20pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Our
long-term success depends substantially on our ability to obtain regulatory clearance or approval and thereafter commercialize our product
candidates; we cannot be certain that we will be able to do so in a timely manner or at all.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
process of obtaining regulatory clearances or approvals to market a medical diagnostic from the FDA or similar regulatory authorities
outside of the United States can be costly and time consuming, and there can be no assurance that such clearances or approvals will be
granted on a timely basis, or at all. The FDA&#8217;s 510(k) clearance process generally takes one to six months from the date of submission,
depending on whether a special or traditional 510(k) premarket notification has been submitted, but can take significantly longer. An
application for premarket approval, or PMA, must be submitted to the FDA if the device cannot be cleared through the 510(k) clearance
process or is not exempt from premarket review by the FDA. The PMA process almost always requires one or more clinical trials and can
take two to three years from the date of filing, or even longer.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">If
we are required to obtain approval of any of our products through the PMA process, the costs associated with such a process will be significant,
which could adversely affect our financial performance and results of operations. In addition, a submission through the PMA process would
require us to delay commercialization of such product candidates until after approval is received, if ever. If we are unable to commercialize
our product candidates in a timely manner, or at all, our business will be adversely affected.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Similar
to our compliance with U.S. regulatory requirements, we must obtain and comply with international requirements, in order to market and
sell our products outside of the United States and we may only promote and market our products, if approved, as permitted by applicable
regulatory authorities. There is no guarantee that we will receive the necessary regulatory approvals for our product candidates either
inside the United States or internationally. If our product candidates do not receive necessary regulatory approvals, our business could
be materially and adversely affected.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>


<!-- Field: Page; Sequence: 15; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->15<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Our
current and future relationships with third-party payers and current and potential customers in the United States and elsewhere may be
subject, directly or indirectly, to applicable anti-kickback, fraud and abuse, false claims, transparency, health information privacy
and security and other healthcare laws and regulations, which could expose us to criminal sanctions, civil penalties, contractual damages,
reputational harm administrative burdens and diminished profits and future earnings.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
current and future arrangements with third-party payers and current and potential customers, including providers and physicians, may
expose us to broadly applicable fraud and abuse and other healthcare laws and regulations, including, without limitation, the federal
Anti-Kickback Statute and the federal False Claims Act, which may constrain the business or financial arrangements and relationships
through which we sell, market and distribute our products. In addition, we may be subject to transparency laws and patient privacy regulations
by U.S. federal and state governments and by governments in foreign jurisdictions in which we conduct our business. The applicable federal,
state and foreign healthcare laws and regulations that may affect our ability to operate include:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the federal Anti-Kickback
    Statute, which prohibits, among other things, persons from knowingly and willfully soliciting, offering, receiving or providing remuneration,
    directly or indirectly, in cash or in kind, to induce or reward, or in return for, either the referral of an individual for, or the
    purchase, order or recommendation of, any good or service, for which payment may be made under federal healthcare programs, such
    as Medicare and Medicaid;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">federal civil and criminal
    false claims laws and civil monetary penalty laws, including the federal False Claims Act, which impose criminal and civil penalties,
    including civil whistleblower or qui tam actions, against individuals or entities for knowingly presenting, or causing to be presented,
    to the federal government, including the Medicare and Medicaid programs, claims for payment that are false or fraudulent or making
    a false statement to avoid, decrease or conceal an obligation to pay money to the federal government;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the federal Health Insurance
    Portability and Accountability Act of 1996, or HIPAA, which imposes criminal and civil liability for executing a scheme to defraud
    any healthcare benefit program or making false statements relating to healthcare matters;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">HIPAA, as amended by the
    Health Information Technology for Economic and Clinical Health Act of 2009, or HITECH, and their respective implementing regulations,
    which impose obligations on covered healthcare providers, health plans, and healthcare clearinghouses, as well as their business
    associates that create, receive, maintain or transmit individually identifiable health information for or on behalf of a covered
    entity, with respect to safeguarding the privacy, security and transmission of individually identifiable health information;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the Physician Payments
    Sunshine Act, which requires (i) manufacturers of drugs, devices, biologics and medical supplies for which payment is available under
    Medicare, Medicaid or the Children&#8217;s Health Insurance Program, with specific exceptions, to report annually to CMS information
    related to certain &#8220;payments or other transfers of value&#8221; made to physicians, which is defined to include doctors, dentists,
    optometrists, podiatrists and chiropractors, and teaching hospitals, (ii) applicable manufacturers and applicable group purchasing
    organizations to report annually to CMS ownership and investment interests held in such entities by physicians and their immediate
    family members, with data collection beginning on August 1, 2013, (iii) manufacturers to submit reports to CMS by the 90th day of
    each calendar year, and (iv) disclosure of such information by CMS on a publicly available website; and</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">analogous state and foreign
    laws and regulations, such as state anti-kickback and false claims laws, which may apply to sales or marketing arrangements and claims
    involving healthcare items or services reimbursed by non-governmental third-party payers, including private insurers; state and foreign
    laws that require medical device companies to comply with the medical device industry&#8217;s voluntary compliance guidelines and
    the relevant compliance guidance promulgated by the federal government or otherwise restrict payments that may be made to healthcare
    providers; state and foreign laws that require medical device manufacturers to report information related to payments and other transfers
    of value to physicians and other healthcare providers or marketing expenditures; and state and foreign laws governing the privacy
    and security of health information in certain circumstances, many of which differ from each other in significant ways and often are
    not preempted by HIPAA, thus complicating compliance efforts. </span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>


<!-- Field: Page; Sequence: 16; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->16<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Efforts
to ensure that our business arrangements with third parties will comply with applicable healthcare laws and regulations may involve substantial
costs. It is possible that governmental authorities will conclude that our business practices may not comply with current or future statutes,
regulations or case law involving applicable fraud and abuse or other healthcare laws and regulations. If our operations are found to
be in violation of any of these laws or any other governmental regulations that may apply to us, we may be subject to significant civil,
criminal and administrative penalties, including, without limitation, damages, fines, imprisonment, exclusion from participation in government
healthcare programs, such as Medicare and Medicaid, and the curtailment or restructuring of our operations, which could have a material
adverse effect on our business. If any of the physicians or other healthcare providers or entities with whom we expect to do business,
including our collaborators, are found not to be in compliance with applicable laws, they may be subject to criminal, civil or administrative
sanctions, including exclusions from participation in government healthcare programs, which could also materially affect our business.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
are subject to stringent and changing data protection laws, privacy policies and data protection obligations, which continue to evolve and change over time. The actual or perceived
failure by us or our third-party service providers or vendors to comply with such obligations could harm our reputation, subject us to
significant fines and liability, or otherwise adversely affect our business.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
are subject to numerous data protection laws that govern the processing of individually identifiable information and health information
and other sensitive and personal information in the jurisdictions in which we operate. In many instances, these data protection laws,
regulations and standards apply not only to disclosures to third parties, but also to transfers of information between or among us and
other parties with which we have commercial relationships. The regulatory framework for data privacy, data security and data transfers
worldwide is rapidly evolving and, as a result, interpretation and implementation standards and enforcement practices are likely to remain
uncertain for the foreseeable future. These data protection laws may be interpreted and applied differently over time and from jurisdiction
to jurisdiction, and it is possible that they will be interpreted and applied in ways that will materially and adversely affect our business,
financial condition and results of operations. Failure to comply with any of these data protection laws could result in enforcement actions
against us, including fines, imprisonment of company officials and public censure, claims for damages by affected individuals, damage
to our reputation and loss of goodwill, any of which could have a material adverse effect on our business.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 20pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">There
are numerous U.S. federal and state laws and regulations related to the privacy and security of personal information. These laws and
regulations include the Health Insurance Portability and Accountability Act of 1996, or HIPAA, as amended by the Health Information Technology
for Economic and Clinical Health Act of 2009, or HITECH, and their implementing regulations, or collectively referred to as the HIPAA
Rules, which establish a set of national privacy and security standards to safeguard Protected Health Information, or PHI, by health
plans, healthcare clearinghouses and certain healthcare providers, referred to as covered entities, and the business associates and their
subcontractors with whom such covered entities contract for services that involve the creation, receipt, maintenance or transmission
of PHI for or on behalf of a covered entity or another business associate. HIPAA requires covered entities and business associates to,
among other things, develop and maintain policies and procedures with respect to PHI that is used or disclosed, including the adoption
of administrative, physical and technical safeguards to protect such information and ensure the confidentiality, integrity and availability
of electronic PHI. As this applies to our business, we are required to maintain security standards for any PHI that we create, receive,
maintain or transmit. For example, we plan to offer cloud-based portal software to help our customers more efficiently use our products.
The software will maintain security safeguards that are designed to be consistent with the HIPAA Rules, but we cannot guarantee that
these safeguards will not fail or that they will not be deemed inadequate in the future. In addition, we could be subject to periodic
audits for compliance with the HIPAA Privacy and Security Standards by the U.S. HHS, and our customers. The U.S. HHS Office for Civil
Rights may impose significant penalties on entities subject to HIPAA for a failure to comply with a requirement of the HIPAA Rules. If
we are unable to properly protect the privacy and security of the PHI of our customers, we could be found to have breached our contracts.
Determining whether PHI has been handled in compliance with applicable privacy standards and our contractual obligations can be complex
and we cannot be sure how these regulations will be interpreted, enforced or applied to our operations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 20pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
addition, many states in which we operate have laws that protect the privacy and security of sensitive and personal information, including
health-related information. Certain state laws may be more stringent or broader in scope, or offer greater individual rights, with respect
to sensitive and personal information than federal, international or other state laws, and such laws may differ from each other, which
may complicate compliance efforts.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 20pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 17; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->17<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Laws,
regulations and standards in many other jurisdictions also apply broadly to the Processing of personal information, which impose significant
compliance obligations. Complying with these numerous, complex and often changing regulations is expensive and difficult, and failure
to comply with any Data Protection Laws or any security incident or breach involving the misappropriation, loss or other unauthorized
use or disclosure of sensitive or confidential information, whether by us, one of our service providers or another third party, could
negatively affect our business, financial condition and results of operations, including but not limited to: investigation costs, material
fines and penalties; compensatory, special, punitive and statutory damages; litigation; consent orders regarding our privacy and security
practices; requirements that we provide notices, credit monitoring services or credit restoration services or other relevant services
to impacted individuals; adverse actions against our licenses to do business; and injunctive relief.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 20pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Many
statutory requirements, both in the United States and abroad, include obligations for companies to notify individuals of security breaches
involving certain personal information, which could result from breaches experienced by us or our third-party service providers. For
example, laws in all 50 U.S. states and the District of Columbia require businesses to provide notice to consumers whose unencrypted
personal information has been disclosed as a result of a data breach. These laws are not consistent, and compliance in the event of a
widespread data breach is difficult and may be costly. Moreover, states have been frequently amending existing laws, requiring attention
to changing regulatory requirements. We also may be contractually required to notify affected customers, regulators, credit reporting
agencies or other affected individuals of a security breach. Such notifications are costly, and the disclosures or the failure to comply
with such requirements, could lead to material adverse effects, including without limitation, negative publicity, a loss of customer
confidence in our services or security measures or breach of contract claims. There can be no assurance that the limitations of liability
in our contracts would be enforceable or adequate or would otherwise protect us from liabilities or damages if we fail to comply with
applicable Data Protection Laws, Data Protection Obligations or other legal obligations. In addition, although we may have contractual
protections with our third-party service providers, contractors and consultants, any actual or perceived security breach by our subcontractors
could harm our reputation and brand, expose us to potential liability or require us to expend significant resources on data security
and in responding to any such actual or perceived breach. Any contractual protections we may have from our third-party service providers,
contractors or consultants may not be sufficient to adequately protect us from any such liabilities and losses, and we may be unable
to enforce any such contractual protections.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 20pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
expect that there will continue to be new proposed laws and regulations concerning data privacy and security, and we cannot yet determine
the impact such future laws, regulations and standards may have on our business. New laws, amendments to or re-interpretations of existing
laws, regulations, standards and other obligations may require us to incur additional costs and restrict our business operations. Because
the interpretation and application of health-related and Data Protection Laws and other obligations are still uncertain, and often contradictory
and in flux, it is possible that the scope and requirements of these laws may be interpreted and applied in a manner that is inconsistent
with our practices and our efforts to comply with the evolving data protection rules may be unsuccessful. If so, this could result in
government-imposed fines or orders requiring that we change our practices, which could adversely affect our business.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 20pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
cannot assure you that our third-party partners and service providers with access to our or our customers&#8217;, suppliers&#8217; and
employees&#8217; personally identifiable and other sensitive or confidential information in relation to which we are responsible will
not breach contractual obligations imposed by us or violate Data Protection Laws, or that they will not experience security breaches
or attempts thereof, which could have a corresponding effect on our business, including putting us in breach of our obligations under
the Data Protection Laws, which could in turn adversely affect our business, results of operations and financial condition. We cannot
assure you that our contractual measures and our own privacy- and security-related safeguards will protect us from the risks associated
with the third-party processing, storage and transmission of such information.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 20pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
may receive inquiries or be subject to investigations, proceedings or actions, by various government entities regarding our privacy and
information security practices and Processing (&#8220;Regulatory Proceedings&#8221;). These Regulatory Proceedings could result in a
material adverse effect, including without limitation, interruptions of, or required changes to, our business practices, the diversion
resources and the attention of management from our business, regulatory oversights and audits, discontinuance of necessary Processing,
or other remedies that adversely affect our business.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 20pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 18; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->18<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
addition to the possibility of fines, lawsuits, regulatory investigations, public censure, other claims and penalties, and significant
costs for remediation and damage to our reputation, we could be materially and adversely affected if legislation or regulations are expanded
to require changes in our data processing practices and policies or if governing jurisdictions interpret or implement their legislation
or regulations in ways that negatively impact our business. Complying with these various laws could cause us to incur substantial costs
or require us to change our business practices and compliance procedures in a manner adverse to our business. Any inability to adequately
address data privacy or security-related concerns, even if unfounded, or to comply with applicable laws, regulations, standards and other
obligations relating to data privacy and security, could result in additional cost and liability to us, harm our reputation and brand,
damage our relationships with customers and have a material and adverse impact on our business.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0pt; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">While
we maintain general liability insurance coverage, cyber insurance coverage and other insurance, we cannot assure that such coverage will
be adequate or otherwise protect us from or adequately mitigate liabilities or damages with respect to claims, costs, expenses, litigation,
fines, penalties, business loss, data loss, regulatory actions or material adverse effects arising out of our privacy and security practices,
Processing or security breaches we may experience, or that such coverage will continue to be available on acceptable terms or at all.
The successful assertion of one or more large claims against us that exceeds our available insurance coverage, or results in changes
to our insurance policies (including premium increases or the imposition of large deductible or co-insurance requirements), could have
an adverse effect on our business. In addition, we cannot be sure that our existing insurance coverage will continue to be available
on acceptable terms or that our insurers will not deny coverage as to any future claim.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0pt; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0pt; text-align: justify; background-color: white"></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0pt; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
may incur substantial costs in our efforts to comply with evolving global data protection laws and regulations, and any failure or perceived
failure by us to comply with such laws and regulations may harm our business and operations.</i></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0pt; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
global data protection landscape is rapidly evolving, and we may be or become subject to or affected by numerous federal, state and foreign
laws and regulations, as well as regulatory guidance, governing the collection, use, disclosure, transfer, security and processing of
personal data, such as information that we collect about subjects and health care providers in connection with clinical trials. Implementation
standards and enforcement practices are likely to remain uncertain for the foreseeable future, which may create uncertainty in our business;
affect our or our service providers&#8217; ability to operate in certain jurisdictions or to collect, store, transfer use and share personal
data; result in liability; or impose additional compliance or other costs on us. Any failure or perceived failure by us to comply with
federal, state, or foreign laws or self-regulatory standards could result in negative publicity, diversion of management time and effort
and proceedings against us by governmental entities or others.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0pt; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the United States, numerous federal and state laws and regulations, including federal health information privacy laws (e.g., the Health
Insurance Portability and Accountability Act, as amended by the Health Information Technology for Economic and Clinical Health Act, or
collectively HIPAA), state data breach notification laws, state health information privacy laws, and federal and state consumer protection
laws (e.g., Section&#160;5 of the Federal Trade Commission Act), that govern the collection, use, disclosure and protection of health-related
and other personal information could apply to our operations or the operations of our collaborators. In addition, we may obtain health
information from third parties (including research institutions from which we obtain clinical trial data) that are subject to privacy
and security requirements under HIPAA or other privacy and data security laws. Depending on the facts and circumstances, we could be
subject to criminal penalties if we knowingly obtain, use, or disclose protected health information maintained by a HIPAA-covered entity
in a manner that is not authorized or permitted by HIPAA. However, determining whether protected health information has been handled
in compliance with applicable privacy standards and our contractual obligations can be complex and may be subject to changing interpretation.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0pt; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">If
we are unable to properly protect the privacy and security of protected health information or other personal, sensitive, or confidential
information in our possession, we could be found to have breached our contracts. Further, if we fail to comply with applicable privacy
laws, including applicable HIPAA privacy and security standards, we could face significant administrative, civil and criminal penalties.
Enforcement activity can also result in financial liability and reputational harm, and responses to such enforcement activity can consume
significant internal and outside resources. Furthermore, state attorneys general are authorized to bring civil actions seeking either
injunctions or damages in response to violations that threaten the privacy of state residents. In addition, our ongoing efforts to comply
with evolving laws and regulations at the federal and state level may be costly and require continuous modifications to our compliance
policies, procedures, and systems.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0pt; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Many
state laws govern the privacy and security of personal information and data in specified circumstances, many of which differ from each
other in significant ways, are often not pre-empted by HIPAA, and may have a more prohibitive effect than HIPAA, thus complicating compliance
efforts. For example, the California Consumer Privacy Act of 2018 (the &#8220;CCPA&#8221;), which went into effect in January 2020 and
provides new data privacy rights for consumers and new operational requirements for companies, which may increase our compliance costs
and potential liability. The CCPA gives California residents expanded rights to access and delete their personal information, opt out
of certain personal information sharing, and receive detailed information about how their personal information is used. The CCPA provides
for civil penalties for violations, as well as a private right of action for data breaches that is expected to increase data breach litigation.
While there is currently an exception for protected health information that is subject to HIPAA and clinical trial regulations, as currently
written, the CCPA may impact certain of our business activities. In addition, the California Consumer Rights Act, or CPRA, was recently
enacted to strengthen elements of the CCPA and became effective on January&#160;1, 2023. The CPRA imposes additional data protection
obligations on covered businesses, including additional consumer rights processes, limitations on data uses, new audit requirements for
higher risk data, and opt outs for certain uses of sensitive data and expands the application of the CCPA to all human resources personal
information of California-based employees. In addition, the CPRA created a new California data protection agency authorized to issue
substantive regulations and is expected to result in increased privacy and information security enforcement. A number of other states
have considered similar privacy proposals, and states have recently enacted their own privacy laws. For example, the Virginia Consumer
Data Protection Act became effective on January 1, 2023, and Colorado and Utah enacted similar laws that will also become effective in
2023, increasing the complexity of compliance and the risk of failures to comply. These privacy laws may impact our business activities
and exemplify the vulnerability of our business to the evolving regulatory environment related to personal data.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0pt; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
addition to our operations in the United States, which may be subject to health care and other laws relating to the privacy and security
of health information and other personal information, we may be or become subject to European data privacy laws, regulations and guidelines.
The General Data Protection Regulation, (EU) 2016/679 (&#8220;GDPR&#8221;) became effective on May 25, 2018, and deals with the collection,
use, storage, disclosure, transfer, or other processing of personal data, including personal health data, regarding individuals in the
EEA. The GDPR imposes a broad range of strict requirements on companies subject to the GDPR, including requirements relating to having
legal bases for processing personal information relating to identifiable individuals and transferring such information outside the EEA,
including to the United States, providing details to those individuals regarding the processing of their personal health and other sensitive
data, obtaining consent of the individuals to whom the personal data relates, keeping personal information secure, having data processing
agreements with third parties who process personal information, responding to individuals&#8217; requests to exercise their rights in
respect of their personal information, reporting security breaches involving personal data to the competent national data protection
authority and affected individuals, appointing data protection officers, conducting data protection impact assessments, and record-keeping.
The GDPR increases substantially the penalties to which we could be subject in the event of any non-compliance, including fines of up
to &#8364;10,000,000 or up to 2% of our total worldwide annual turnover for certain comparatively minor offenses, or up to &#8364;20,000,000
or up to 4% of our total worldwide annual turnover, whichever is greater, for more serious offenses. The GDPR also confers a private
right of action on data subjects and consumer associations to lodge complaints with supervisory authorities, seek judicial remedies,
and obtain compensation for damages resulting from violations of the GDPR. In addition, the GDPR includes restrictions on cross-border
data transfers.</span></p>

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


<!-- Field: Page; Sequence: 19; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->19<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0pt; text-align: justify; background-color: white">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0pt; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Following
the United Kingdom&#8217;s withdrawal from the European Union (i.e., Brexit), and the expiry of the Brexit transition period, which ended
on December 31, 2020, the EU GDPR has been implemented in the United Kingdom (as the UK GDPR). The UK GDPR sits alongside the UK Data
Protection Act 2018 which implements certain derogations in the EU GDPR into UK law. Under the UK GDPR, companies not established in
the UK but who process personal data in relation to the offering of goods or services to individuals in the UK, or to monitor their behavior
will be subject to the UK GDPR &#8211; the requirements of which are (at this time) largely aligned with those under the EU GDPR and
as such, may lead to similar compliance and operational costs with potential fines of up to &#163;17.5 million or 4% of global turnover.
In 2022, the government of the United Kingdom proposed and debated the Data Protection and Digital Information Bill to harmonize the
2018 Data Protection Act, UK GDPR, and the Privacy and Electronic Communications Regulations under one legislative framework. However,
progress on the bill stalled as the government continues to assess the most optimal approach to data protection reform.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
currently sell some of our products in the EEA, and the GDPR increases our responsibility and liability in relation to personal data
that we process where such processing is subject to the GDPR, and we are required to have in place additional mechanisms and safeguards
to ensure compliance with the GDPR, including as implemented by individual countries. Compliance with the GDPR is a rigorous and time-intensive
process that increase our cost of doing business or require us to change our business practices, and despite those efforts, there is
a risk that we may be subject to fines and penalties, litigation, and reputational harm in connection with our European activities. We
expect that we will continue to face uncertainty as to whether our efforts to comply with any obligations under European privacy laws
will be sufficient. If we are investigated by a European data protection authority, we may face fines and other penalties. Any such investigation
or charges by European data protection authorities could have a negative effect on our existing business and on our ability to attract
and retain new clients or partners.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0pt; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Proposed
legislation in the U.S. Congress, including changes in U.S. tax law, and the recently enacted Inflation Reduction Act of 2022 may adversely
impact us and the value of common shares, pre-funded warrants, and Warrants.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Changes
to U.S. tax laws (which changes may have retroactive application) could adversely affect us or holders of common shares. In recent years,
many changes to U.S. federal income tax laws have been proposed and made, and additional changes to U.S. federal income tax laws are
likely to continue to occur in the future.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
U.S. Congress is currently considering numerous items of legislation which may be enacted prospectively or with retroactive effect, which
legislation could adversely impact our financial performance and the value of common shares. If enacted, most of the proposals would
be effective for the current or later years. The proposed legislation remains subject to change, and its impact on us and the holders
of common shares is uncertain.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
addition, the Inflation Reduction Act of 2022 was recently signed into law and includes provisions that will impact the U.S. federal
income taxation of corporations. Among other items, this legislation includes provisions that will impose a minimum tax on the book income
of certain large corporations and an excise tax on certain corporate stock repurchases that would be imposed on the corporation repurchasing
such stock. It is unclear how this legislation will be implemented by the U.S. Department of the Treasury, and we cannot predict how
this legislation or any future changes in tax laws might affect us or holders of common shares, pre-funded warrants or Warrants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Risks
Related to Our Intellectual Property</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>If
the combination of patents, trade secrets and contractual provisions that we rely on to protect our intellectual property is inadequate,
our ability to commercialize our products successfully will be harmed, and we may not be able to operate our business profitably.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
success depends significantly on our ability to protect our proprietary rights to the technologies incorporated in our products. We rely
on a combination of patent protection, trade secret laws and nondisclosure, confidentiality and other contractual restrictions to protect
our proprietary technology. However, these may not adequately protect our rights or permit us to gain or keep any competitive advantage.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
issuance of a patent is not conclusive as to its scope, validity or enforceability. The scope, validity or enforceability of our issued
patents can be challenged in litigation or proceedings before the U.S. Patent and Trademark Office, or the USPTO, or foreign patent offices.
In addition, our pending patent applications include claims to numerous important aspects of our products under development that are
not currently protected by any of our issued patents. We cannot assure you that any of our pending patent applications will result in
the issuance of patents to us. The USPTO or foreign patent offices may deny or require significant narrowing of claims in our pending
patent applications. Patents issued as a result of the pending patent applications, if any, may not provide us with significant commercial
protection or be issued in a form that is advantageous to us. Proceedings before the USPTO or foreign patent offices could result in
adverse decisions as to the priority of our inventions and the narrowing or invalidation of claims in issued patents. The laws of some
foreign countries may not protect our intellectual property rights to the same extent as the laws of the United States, if at all.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
competitors may successfully challenge and invalidate or render unenforceable our issued patents, including any patents that may issue
in the future, which could prevent or limit our ability to market our products and could limit our ability to stop competitors from marketing
products that are substantially equivalent to ours. In addition, competitors may be able to design around our patents or develop products
that provide outcomes that are comparable to our products but that are not covered by our patents.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the event a competitor infringes upon any of our patents or other intellectual property rights, enforcing our rights may be difficult,
time-consuming and expensive, and would divert management&#8217;s attention from managing our business. There can be no assurance that
we will be successful on the merits in any enforcement effort. In addition, we may not have sufficient resources to litigate, enforce
or defend our intellectual property rights.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
could become subject to intellectual property litigation that could be costly, result in the diversion of management&#8217;s time and
efforts, require us to pay damages, prevent us from marketing our commercially available products or product candidates and/or reduce
the margins we may realize from our products that we may commercialize.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Whether
a product infringes a patent involves complex legal and factual issues, and the determination is often uncertain. There may be existing
patents of which we are unaware that our products under development may inadvertently infringe. The likelihood that patent infringement
claims may be brought against us increases as the number of participants in the <i>in vitro</i> diagnostics market increases and as we
achieve more visibility in the marketplace and introduce products to market.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Any
infringement claim against us, even if without merit, may cause us to incur substantial costs, and would place a significant strain on
our financial resources, divert the attention of management from our core business, and harm our reputation. In some cases, litigation
may be threatened or brought by a patent holding company or other adverse patent owner who has no relevant product revenues and against
whom our patents may provide little or no deterrence. If we were found to infringe any patents, we could be required to pay substantial
damages, including triple damages if an infringement is found to be willful, and royalties and could be prevented from selling our products
unless we obtain a license or are able to redesign our products to avoid infringement. We may not be able to obtain a license enabling
us to sell our products on reasonable terms, or at all, and there can be no assurance that we would be able to redesign our products
in a way that would not infringe those patents. If we fail to obtain any required licenses or make any necessary changes to our technologies
or the products that incorporate them, we may be unable to commercialize one or more of our products or may have to withdraw products
from the market, all of which would have a material adverse effect on our business, financial condition and results of operations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 20; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->20<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
rely substantially on our trademarks and trade names. If our trademarks and trade names are not adequately protected, then we may not
be able to build name recognition in our markets of interest and our business may be harmed.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
rely substantially upon trademarks to build and maintain the integrity of our brand. Our registered and unregistered trademarks or trade
names may be challenged, infringed, circumvented, declared unenforceable or determined to be violating or infringing on other intellectual
property rights. We may not be able to protect or enforce our rights to these trademarks and trade names, which we rely upon to build
name recognition among potential partners and customers in our markets of interest. At times, competitors or other third parties may
adopt trade names or trademarks similar to ours, thereby impeding our ability to build brand identity and possibly leading to market
confusion. Asserting claims against such third parties may be prohibitively expensive. In addition, there could be potential trade name
or trademark infringement, or dilution claims brought by owners of other trademarks against us. Over the long term, if we are unable
to establish name recognition based on our trademarks and trade names, then we may not be able to compete effectively, and our business
may be adversely affected. Our efforts to enforce or protect our proprietary rights related to trademarks, trade secrets, domain names
or other intellectual property may be ineffective, could result in substantial costs and diversion of resources and could harm our business,
financial condition and results of operations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Risks
Related to Litigation from Operating Our Business</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
may become subject to potential product liability claims, and we may be required to pay damages that exceed our insurance coverage.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
business exposes us to potential product liability claims that are inherent in the design, testing, manufacture, sale and distribution
of our currently marketed products and each of our product candidates that we are seeking to introduce to the market. Someone may allege
that our diagnostic tests identified inaccurate or incomplete information or otherwise failed to perform as designed. We may also be
subject to liability for errors in, a misunderstanding of or inappropriate reliance upon, the information we provide in the ordinary
course of our business activities. In addition, we may be subject to product liability claims resulting from misuse or off-label use
of our products and product candidates. Any product liability claim brought against us, with or without merit, could result in an increase
of our product liability insurance rates or in our inability to secure coverage in the future on commercially reasonable terms, if at
all. In addition, if our product liability insurance proves to be inadequate to pay a damage award, we may have to pay the excess of
this award out of our cash reserves, which could significantly harm our financial condition. A product liability claim, even one without
merit, could harm our reputation in the industry, lead to significant legal fees, and result in the diversion of management&#8217;s attention
from managing our business.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Current
or future litigation, government investigations and other legal proceedings may harm our business.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 20pt; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have been, currently are and may in the future become, involved in legal proceedings that could have a negative impact on our reputation,
business and financial condition and divert the attention of our management from the operation of our business. The types of legal proceedings
we may be or become subject to include patent and other intellectual property claims, product liability claims, employee claims, tort
or contract claims, federal or state regulatory investigations, securities class actions, and other legal proceedings, investigations
or claims. For example, we are currently parties to two securities class action claims and three derivative actions. On March 20, 2020,
we received a voluntary request for documents from the SEC relating to disclosures regarding our COVID-19 test and other matters. Since
that time we and certain of our current and former officers have been cooperating with the SEC and providing documents and information.
The Company has entered into negotiations with the SEC in an attempt to reach a consensual resolution of the matters raised in the SEC&#8217;s
investigation. Any such resolution may include the imposition of civil penalties, injunctive and other relief against the Company, senior
management and related individuals. We cannot predict the outcome of these negotiations or of the SEC&#8217;s investigation at this time,
however, to the best of our knowledge, we do not believe that the matter is reasonably likely to result in financial penalties having
a material adverse effect on the Company. Litigation and other legal proceedings are inherently unpredictable and can result in excessive
or unanticipated verdicts and/or injunctive relief that affect how we operate our business. We could incur judgments or enter into settlements
of claims for monetary damages or for agreements to change the way we operate our business, or both. There may be an increase in the
scope of these matters or there may be additional lawsuits, claims, proceedings or investigations in the future, which could harm our
business, financial condition and results of operations. Adverse publicity about regulatory or legal action against us could damage our
reputation and brand image, undermine our customers&#8217; confidence and reduce long-term demand for any of our products or other offerings,
even if the regulatory or legal action is unfounded or not material to our operations. For additional information, see &#8220;Item 3.
Legal Proceedings.&#8221;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>


<!-- Field: Page; Sequence: 21; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->21<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>General
Risk Factors</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>The
price of our common stock may fluctuate substantially.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
market price of our common stock may be subject to wide fluctuation in response to various factors, some of which are beyond our control.
Some factors that may cause the market price of our common stock to fluctuate, in addition to the other risks mentioned in this &#8220;Risk
Factors&#8221; section and elsewhere in this report, are:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">sales of our common stock
    by our shareholders, executives, and directors;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify">o<span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">ur
ability to obtain regulatory approval to commercialize our &#8220;at-home&#8221; and POCT product candidates on a timely basis or at
all; </span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">our ability to enter new
    markets;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">actual or unanticipated
    fluctuations in our annual and quarterly financial results;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">our ability to obtain financings
    to continue and expand our commercial activities, expand our manufacturing operations, conduct research and development activities
    including, but not limited to, human clinical trials, and other business activities;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">our ability to secure resources
    and the necessary personnel to continue and expand our commercial activities, develop additional diagnostic tests, conduct clinical
    trials and gain approval for our diagnostic tests on our desired schedule;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">commencement, enrollment
    or results of our clinical trials of our diagnostic tests or any future clinical trials we may conduct;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">changes in the development
    status of our diagnostic tests;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">any delays or adverse developments
    or perceived adverse developments with respect to review by the FDA or other similar foreign regulatory authorities of our planned
    clinical trials;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">any delay in our submission
    for studies or test approvals or adverse regulatory decisions, including failure to receive regulatory approval or clearance for
    our diagnostic tests;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">our announcements or our
    competitors&#8217; announcements regarding new tests, enhancements, significant contracts, acquisitions or strategic investments;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">failures to meet external
    expectations or management guidance;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">changes in our capital
    structure or dividend policy, including as a result of future issuances of securities and sales of large blocks of common stock by
    our shareholders;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">announcements and events
    surrounding financing efforts, including debt and equity securities;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">competition from existing
    technologies and diagnostic tests or new technologies and diagnostic tests that may emerge;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">announcements of acquisitions,
    partnerships, collaborations, joint ventures, new diagnostic tests, capital commitments, or other events by us or our competitors;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">changes in general economic,
    political and market conditions in any of the regions in which we conduct our business;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">changes in industry conditions
    or perceptions;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">changes in valuations of
    similar companies or groups of companies;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">analyst research reports,
    recommendations and changes in recommendations, price targets and withdrawals of coverage;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">departures and additions
    of key personnel;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">disputes and litigations
    related to intellectual properties, proprietary rights, and contractual obligations;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">changes in applicable laws,
    rules, regulations, or accounting practices and other dynamics;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">other events or factors,
    many of which may be out of our control.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
addition, if the market for stocks in our industry or industries related to our industry, or the stock market in general, experiences
a loss of investor confidence, the trading price of our common stock could decline for reasons unrelated to our business, financial condition
and results of operations. If any of the foregoing occurs, it could cause our stock price to fall and may expose us to lawsuits that,
even if unsuccessful, could be costly to defend and a distraction to management.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 22; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->22<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>&#160;</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Anti-takeover
provisions in our charter documents and Utah law could discourage, delay, or prevent a change of control of our Company and may affect
the trading price of our common stock.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
are a Utah corporation and the anti-takeover provisions of the Utah Control Shares Acquisition Act may discourage, delay or prevent a
change of control by limiting the voting rights of control shares acquired in a control share acquisition. In addition, our Articles
of Incorporation and Bylaws may discourage, delay or prevent a change in our management or control over us that shareholders may consider
favorable. Among other things, our Amended and Restated Articles of Incorporation and Bylaws:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">authorize the issuance
    of &#8220;blank check&#8221; preferred stock that could be issued by our board of directors in response to a takeover attempt;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">provide that vacancies
    on our board of directors, including newly created directorships, may be filled only by a majority vote of directors then in office,
    except a vacancy occurring by reason of the removal of a director without cause shall be filled by vote of the shareholders; </span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">no right to cumulative
    voting; </span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">limit who may call special
    meetings of shareholders; and </span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#9679;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Provide for a staggered
    board of directors</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">These
provisions could have the effect of delaying or preventing a change of control, whether or not it is desired by, or beneficial to, our
shareholders.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
do not currently intend to pay dividends on our common stock.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
do not expect to pay cash dividends on our common stock. Any future dividend payments are within the absolute discretion of our board
of directors and will depend on, among other things, our results of operations, working capital requirements, capital expenditure requirements,
financial condition, contractual restrictions, business opportunities, anticipated cash needs, provisions of applicable law and other
factors that our board of directors may deem relevant. We may not generate sufficient cash from operations in the future to pay dividends
on our common stock.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
are a &#8220;smaller reporting company&#8221; and the reduced disclosure requirements applicable to smaller reporting companies may make
our common stock less attractive to investors.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
are currently a &#8220;smaller reporting company&#8221; as defined in the Securities Exchange Act of 1934. Smaller reporting companies
are able to provide simplified executive compensation disclosures in their filings, and have certain other decreased disclosure obligations in their SEC filings, including,
among other things, only being required to provide two years of audited financial statements in annual reports. We cannot predict whether
investors will find our common stock less attractive because of our reliance on any of these exemptions. If some investors find our common
stock less attractive as a result, there may be a less active trading market for our common stock and our stock price may be more volatile.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>We
incur substantial costs as a result of being a public company and our management expects to devote substantial time to public company
compliance programs.</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
a public company, we incur significant legal, insurance, accounting and other expenses, including costs associated with public company
reporting. We intend to invest resources to comply with evolving laws, regulations and standards, and this investment will result in
increased general and administrative expenses and may divert management&#8217;s time and attention from product development and commercialization
activities. If our efforts to comply with new laws, regulations and standards differ from the activities intended by regulatory or governing
bodies due to ambiguities related to practice, regulatory authorities may initiate legal proceedings against us, and our business may
be harmed. These laws and regulations could make it more difficult and costlier for us to obtain director and officer liability insurance
for our directors and officers, and we may be required to accept reduced coverage or incur substantially higher costs to obtain coverage.
These factors could also make it more difficult for us to attract and retain qualified executive officers and qualified members of our
board of directors, particularly to serve on our audit and compensation committees. In addition, if we are unable to continue to meet
the legal, regulatory and other requirements related to being a public company, we may not be able to maintain the listing of our common
stock on The NASDAQ Capital Market, which would likely have a material adverse effect on the trading price of our common stock.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_004"></span>ITEM
1B. UNRESOLVED STAFF COMMENTS</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">None.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<!-- Field: Page; Sequence: 23; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->23<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_005"></span>ITEM
2. PROPERTIES</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
headquarters are located at 2401 S. Foothill Drive, Salt Lake City, Utah. Our current facility has approximately 14,000 square feet of
laboratory and office space under a lease that expires in February 2024. Our recently acquired subsidiaries also lease additional laboratory
and office space under month-to-month leases. We believe the facility we lease is sufficient to meet our needs for the foreseeable future.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_006"></span>ITEM
3. LEGAL PROCEEDINGS</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
the ordinary course of business, we are at times subject to various legal proceedings and disputes, including the proceedings specifically
discussed below. We assess our liabilities and contingencies in connection with outstanding legal proceedings utilizing the latest information
available. Where it is probable that we will incur a loss and the amount of the loss can be reasonably estimated, we record a liability
in our consolidated financial statements. These legal reserves may be increased or decreased to reflect any relevant developments on
a quarterly basis. Where a loss is not probable or the amount of loss is not estimable, we do not accrue legal reserves. While the outcome
of legal proceedings is inherently uncertain, based on information currently available and available insurance coverage, our management
believes that it has established appropriate legal reserves. Any incremental liabilities arising from pending legal proceedings are not
expected to have a material adverse effect on our consolidated financial position, consolidated results of operations, or consolidated
cash flows. However, it is possible that the ultimate resolution of these matters, if unfavorable, may be material to our consolidated
financial position, consolidated results of operations, or consolidated cash flows.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Class
Actions and Shareholder Derivative Suits</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Gelt
Securities Class Action (District of Utah)</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
June 15, 2020, Gelt Trading Co. (&#8220;Gelt&#8221;) filed a lawsuit in the United States District Court for the District of Utah (&#8220;District
of Utah&#8221;), against the Company and certain of our directors and officers, on behalf of itself and a putative class, seeking to
recover damages for alleged violations of Sections 10(b) and 20(a) of the Securities Exchange Act of 1934 (&#8220;Gelt Litigation&#8221;).
The complaint alleges that Co-Diagnostics and the individual defendants overstated the accuracy of the Company&#8217;s Logix Smart COVID-19
test in statements on April 30, 2020 and May 1, 2020, and that plaintiff suffered losses when the Company&#8217;s stock price dropped
after public reports questioned the accuracy of the Logix Smart test on May 14, 2020. On July 15, 2020, plaintiff filed an amended complaint.
On March 10, 2021, the court appointed Gelt as Lead Plaintiff, and on April 7, 2021, Lead Plaintiff filed a second amended complaint
(&#8220;SAC&#8221;), which asserts the same Sections 10(b) and 20(a) claims against the same defendants on largely the same theory. On
May 5, 2021, the defendants moved to dismiss the SAC. On March 9, 2022, the court entered a Decision &amp; Order denying the motion to
dismiss, and on April 13, 2022, the defendants filed an answer to the SAC. On October 17, 2022, Gelt filed a motion to certify the putative
class. Discovery is currently underway and the motion to certify the class is pending. The defendants believe the claims are without
merit and intend to defend vigorously against them, but there can be no assurances as to the outcome.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Shareholder
Derivative Lawsuits (District of Utah &amp; Utah State Court)</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
September 17, 2020, a shareholder derivative lawsuit was filed in the District of Utah by Luis Aguilera, allegedly on behalf of Co-Diagnostics,
Inc., that substantially piggybacks on the Gelt Litigation referenced above. The lawsuit asserts that the defendants failed to prevent
the alleged securities law violations largely asserted in the Gelt Litigation. On December 2, 2020, a second shareholder derivative lawsuit
was filed in the District of Utah by Melvyn Klein asserting essentially the same claims, allegedly on behalf of Co-Diagnostics, as the
Aguilera shareholder derivative action. And on April 29, 2021, the District of Utah consolidated the two shareholder derivative cases,
with the Aguilera case serving as the lead case under the caption <i>In re Co-Diagnostics, Inc. Derivative Litigation</i>. On May 3,
2022, plaintiffs filed an amended complaint asserting claims for breach of fiduciary duty, unjust enrichment, and contribution under
Sections 10(b) and 21D of the Securities Exchange Act of 1934. Defendants answered the amended complaint on June 24, 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 24; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->24<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
November 24, 2020, an additional shareholder derivative lawsuit was filed in the District of Utah by Matthew Wallace, allegedly on behalf
of Co-Diagnostics, Inc., that also piggybacks on the Gelt Litigation referenced above. It named the same defendants and asserted essentially
the same claims, allegedly on behalf of Co-Diagnostics, as in the other District of Utah shareholder derivative actions referenced above.
On January 25, 2021, another shareholder derivative lawsuit was filed in the District of Utah by Jason Reagan, asserting essentially
the same claims as in the Wallace lawsuit. On March 18, 2021, the court consolidated the two lawsuits, with the Wallace lawsuit serving
as the lead case. On April 30, 2021, plaintiffs filed an amended complaint asserting claims for breach of fiduciary duty against defendants
and claims for insider trading.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
March 29, 2021, an additional shareholder derivative lawsuit was filed in the Third District Court in and for Salt Lake County, State
of Utah (&#8220;Utah State Court&#8221;) by Hua Ding, allegedly on behalf of Co-Diagnostics, Inc., that also piggybacks on the Gelt Litigation
referenced above. It names the same defendants and asserts essentially the same claims as in <i>In re Co-Diagnostics, Inc. Derivative
Litigation</i> pending in the District of Utah referenced above. On December 12, 2022, a second shareholder derivative lawsuit was filed
in Utah State Court by Kathryn Matuch asserting essentially the same claims, allegedly on behalf of Co-Diagnostics, as the Ding shareholder
derivative action.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
defendants believe the claims asserted in all of the shareholder derivative lawsuits referenced above are without merit and intend to
defend vigorously against them, but there can be no assurances as to the outcome.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Stadium
Capital Securities Class Action (Southern District of New York)</i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
August 16, 2022, Stadium Capital LLC (&#8220;Stadium&#8221;) filed a lawsuit in the United States District Court for the Southern District
of New York, against Co-Diagnostics, Inc., and certain of our officers, on behalf of itself and a putative class, seeking to recover
damages for alleged violations of Sections 10(b) and 20(a) of the Securities Exchange Act of 1934. The complaint alleges that Co-Diagnostics
and the individual defendants overstated the demand for the Company&#8217;s Logix Smart COVID-19 test in statements on May 12, 2022 and
June 15, 2022. The complaint alleges that plaintiff suffered losses when the Company&#8217;s stock price dropped after the Company disclosed
its financial results for the quarter ended June 30, 2022 in a press release on August 11, 2022. On October 31, 2022, Stadium filed a
motion seeking to be appointed as Lead Plaintiff and for Kaplan Fox &amp; Kilsheimer LLP to be appointed as lead counsel. That motion
is pending before the U.S. District Court. The defendants believe the claims are without merit and intend to defend vigorously against
them, but there can be no assurances as to the outcome.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Commercial
Litigation </b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Co-Diagnostics,
Inc. v. Hukui Technology, Inc., et al. (Third Judicial District Court, Salt Lake County, State of Utah, Civil No. 210902131, filed on
April 21, 2021). </i></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company filed a complaint against Defendants Hukui Technology, Inc., Hukui Tech, Inc., and Hukui Bio Co., Ltd (collectively, &#8220;Hukui&#8221;)
seeking a declaratory judgment that the Company is not obligated to any of them in any amount. On August 24, 2021, Hukui filed their
Answer and Counterclaim seeking damages on a number of theories, including breach of contract for letter agreements, breach of oral agreement,
promissory estoppel, unjust enrichment, and interference with economic relations. Hukui requested a money judgment against the Company
in an amount to be determined at trial. On September 20, 2021, Hukui filed their Unopposed Motion for Leave to Amend Answer to the Complaint,
Affirmative Defenses, and Counterclaims and, on October 14, 2021, Hukui filed their Amended Answer and Counterclaims seeking damages
on declaratory judgment, as well as breach of contract for letters of authorization, breach of oral agreement, promissory estoppel, unjust
enrichment, and interference with economic relations. In 2022 the parties exchanged their initial disclosures, exchanged written discovery
requests, and conducted a number of depositions on each side that were concluded in January 2023. The Company believes the claims are
without merit and intends to defend vigorously against them, but there can be no assurances as to the outcome.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Co-Diagnostics,
Inc. v. Pantheon International Advisors Ltd. (Third Judicial District Court, Salt Lake County, State of Utah, Civil No. 210902609, filed
on May 14, 2021). </i></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company filed a complaint against Pantheon International Advisors (&#8220;Pantheon&#8221;) asking the court to declare that the Company
has no ongoing contractual business relationship with Pantheon, no monies owing, nor does Pantheon have any interest, right, title or
claim to any stock issued by the Company or ownership of any kind in the Company. Pantheon was served with a 30-Day Summons on September
9, 2021 to which it failed to respond, and a default judgement against Pantheon International Advisors was entered by the Court on November
28, 2021. The time to appeal from the judgment or seek to vacate the judgment has passed.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; text-align: justify; margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">After
learning that the Company had initiated suit in Utah, and after learning of Company&#8217;s intent to serve it with process of that suit,
on May 24, 2021, Pantheon filed a claim against the Company in the Royal Courts of Justice Group, Queens Bench Division, Claim No. QB-21-002245,
stating that the Company owes Pantheon $2,860,809.79 for alleged breach of contract for failing to make payments purportedly due under
a contract allegedly entered into on October 18, 2018. The Company is being represented locally in the UK by Freshfields Bruckhaus Deringer
LLP in that matter. On March 4, 2022, the Company filed a jurisdictional challenge to the UK suit, alleging that there was no 2018 agreement,
and that the Company is not subject to jurisdiction in the UK. The oral argument and presentation of evidence on solely the jurisdictional
claim took place on November 9, 2022, with the court taking the matter of jurisdiction over the Company under advisement. The court has
not yet ruled on the motion to dismiss, and it is not yet known when the court will rule upon that motion. The Company intends to vigorously
defend against the UK claims and will seek to the full extent possible to enforce its rights under the Declaratory Judgment already obtained
in Utah but there can be no assurances as to the outcome.</span></p>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">From
time to time, we may become involved in litigation and other proceedings relating to claims arising out of our operations in the normal
course of business and to inquiries from FINRA, NASDAQ and the U.S. Securities and Exchange Commission (the SEC).&#160; On March 20,
2020, the Company received a voluntary request for documents from the SEC relating to disclosures regarding our COVID-19 test and other
matters. Since that time we and certain of our current and former officers have been cooperating with the SEC and providing documents
and information. The Company has entered into negotiations with the SEC in an attempt to reach a consensual resolution of the matters
raised in the SEC&#8217;s investigation. Any such resolution may include the imposition of civil penalties, injunctive and other relief
against the Company, senior management and related individuals.&#160; We cannot predict the outcome of these negotiations or of the SEC&#8217;s
investigation at this time, however, to the best of our knowledge, we do not believe that the matter is reasonably likely to result in
financial penalties having a material adverse effect on the Company.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_007"></span>ITEM
4. MINE SAFETY DISCLOSURES</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Not
applicable.</span></p>

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


<!-- Field: Page; Sequence: 25; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->25<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_008"></span>PART
II</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_009"></span>ITEM
5. MARKET FOR REGISTRANT&#8217;S COMMON EQUITY, RELATED STOCKHOLDER MATTERS AND ISSUER EQUITY SECURITIES</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Market
Information</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
common stock has been quoted on the NASDAQ market under the symbol &#8220;CODX&#8221; since July 12, 2017.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>


<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>


<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Holders</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of March 14, 2023, the last reported sales price reported on NASDAQ for our common stock was $2.99 per share. As of March 14, 2023, we
had approximately 154 record holders of our common stock. The number of record holders was determined from the records of our transfer
agent and does not include beneficial owners of common stock whose shares are held in the names of various security brokers, dealers,
and registered clearing agencies. The transfer agent for our common stock is VStock Transfer LLC located at 18 Lafayette Pl, Woodmere,
New York 11598.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Dividends</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have never declared or paid any cash dividends on our capital stock. The payment of dividends on our common stock in the future will
depend on our earnings, capital requirements, operating and financial condition and such other factors as our board of directors may
consider appropriate. We currently expect to use all available funds to finance the future development and expansion of our business
and do not anticipate paying dividends on our common stock in the foreseeable future.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Pursuant
to Section 16-10a-640 of the Utah Revised Business Corporation Act, no distribution may be made if, after giving it effect:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(a)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the corporation would not
    be able to pay its debts as they become due in the usual course of business; or</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(b)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the corporation&#8217;s
    total assets would be less than the sum of its total liabilities plus, unless the articles of incorporation permit otherwise, the
    amount that would be needed, if the corporation were to be dissolved at the time of the distribution, to satisfy the preferential
    rights upon dissolution of shareholders whose preferential rights are superior to those receiving the distribution.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Recent
Sales of Unregistered Securities</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">None.</span></p>

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


<!-- Field: Page; Sequence: 26; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->26<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Purchases
of Equity Securities by the Issuer and Affiliated Purchasers</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Share
Repurchase Program</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b></b></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td colspan="17" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Issuer Purchase of Equity Securities</td></tr>
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Period</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(a) Total number of shares purchased <sup>(1)</sup></b></span></td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(b) Average price paid per share <sup>(1)</sup></b></span></td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(c ) Total number of shares purchased as part of publicly announced plans or programs <sup>(1)</sup></b></span></td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>(d) Maximum number (or approximate dollar value) of shares that may yet be purchased under the plans or programs <sup>(1)</sup></b></span></td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 44%; text-align: center">10/01/22 - 10/31/22</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">-</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">-</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">-</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">17,005,627</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: center">11/01/22 - 11/30/22</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,750</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">3.01</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4,750</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">16,991,319</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center">12/01/22 - 12/31/22</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">462,582</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">2.60</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">462,582</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">15,788,134</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: center; padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: center; padding-bottom: 2.5pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">467,332</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2.61</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">467,332</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">15,788,134</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b></b></span></p>


<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><sup>(1)</sup></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In March 2022, the company
    announced that its board of directors authorized the repurchase of up to $30.0 million of the company&#8217;s outstanding common
    stock. The extent to which the company repurchases its shares, and the timing of such repurchases, will depend upon a variety of
    factors, including trading volume, market conditions, legal requirements, business conditions and other factors. The repurchase program
    may be discontinued at any time, and the program does not obligate the company to acquire any specific number of shares of its common
    stock.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_010"></span>ITEM
6. RESERVED</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_011"></span>ITEM
7. MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULT OF OPERATIONS</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following management&#8217;s discussion and analysis of financial condition and results of operations describes the principal factors
affecting the results of our operations, financial condition, and changes in financial condition. This discussion should be read in conjunction
with the accompanying audited financial statements, and notes thereto, included elsewhere in this report. In addition to historical information,
this Annual Report contains forward-looking statements that involve risks, uncertainties, and assumptions. Our actual results may differ
materially from those anticipated in these forward-looking statements as a result of certain factors, including but not limited to those
set forth under the caption &#8220;Item 1A. Risk Factors&#8221; in this Annual Report on Form 10-K.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 27; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->27<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Business
Overview</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Co-Diagnostics,
Inc., a Utah corporation (the &#8220;Company&#8221; or &#8220;CODX&#8221;), develops, manufactures and sells reagents used for diagnostic
tests that function via the detection and/or analysis of nucleic acid molecules (DNA or RNA), including robust and innovative molecular
tools for detection of infectious diseases, liquid biopsy for cancer screening, and agricultural applications. In connection with the
sale of our tests we may sell diagnostic equipment from other manufacturers as self-contained lab systems (which we refer to as the &#8220;MDx
Device&#8221;). We are also developing a unique, groundbreaking portable PCR device and proprietary test cups (the &#8220;Co-Dx PCR Home
platform&#8221;) that have been designed to bring affordable, reliable polymerase chain reaction (&#8220;PCR&#8221;) to patients in point-of-care
and even at-home settings. This platform is subject to U.S. Food and Drug Administration (&#8220;FDA&#8221;) review and is not available
for sale at the time of this filing. There is no guarantee the our Co-Dx PCR Home platform will receive the necessary regulatory approvals
for commercialization, or that, if regulatory approval is received, we will be able to successfully commercialize this platform.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
diagnostics systems enable dependable, low-cost, molecular testing for organisms and genetic diseases by automating or simplifying historically
complex procedures in both the development and administration of tests. CODX&#8217;s technical advance involves a novel, patented approach
to PCR test design of primer and probe structure (&#8220;CoPrimers&#8221;) that eliminates one of the key vexing issues of PCR amplification:
the exponential growth of primer-dimer pairs (false positives and false negatives) which adversely interferes with identification of
the target DNA/RNA.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
believe our proprietary molecular diagnostics technology is paving the way for innovation in disease detection and life sciences research
through our enhanced detection of genetic material. For various reasons, including owning our own platform, we believe we will be able
to accomplish this faster and more economically than some competitors, allowing for significant margins while still positioning ourselves
as a low-cost provider of molecular diagnostics and screening services.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
addition, continued development has demonstrated the unique properties of our CoPrimer technology that we believe makes it ideally suited
for a variety of applications where specificity is key to optimal results, including multiplexing several targets, enhanced Single Nucleotide
Polymorphism (&#8220;SNP&#8221;) detection and enrichment for next generation sequencing.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
scientists use the complex mathematics of DNA/RNA PCR test design to engineer and optimize PCR tests and to automate algorithms that
rapidly screen millions of possible options to pinpoint the optimum design. Dr. Brent Satterfield, our founder, developed the intellectual
property we use in our business, consisting of the predictive mathematical algorithms and patented molecular structure used in the testing
process, which together represent a major advance in PCR testing systems. CODX technologies are now protected by more than 20 granted
or pending US and foreign patents, as well as certain trade secrets and copyrights. Ownership of our proprietary platform permits us
the advantage of avoiding payment of patent royalties required by other PCR test systems, which may allow the sale of diagnostic PCR
tests at a lower price than competitors, while enabling us to maintain profit margins.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
proprietary test design process involves identifying the optimal locations on the target genes for amplification and pair the locations
with the optimized primer and probe structure to achieve outputs that meet the design input requirements identified from market research.
This is done by following planned and documented processes, procedures and testing. In other words, we use the data resulting from our
tests to verify whether we succeeded in designing what we intended. Verification involves a series of testing that concludes that the
product is ready to proceed to validation in an evaluation either in our laboratory or in an independent laboratory setting using initial
production tests to confirm that the product as designed meets the user needs.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
may either sell or lease the MDx Device to labs and diagnostic centers, through sale or lease agreements, and sell the reagents that
comprise our proprietary tests to those laboratories and testing facilities.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Using
our proprietary test design system and proprietary reagents, we have designed and obtained regulatory approval in the European Community
and/or in India to sell PCR diagnostic tests for the detection of COVID-19, influenza, tuberculosis, hepatitis B and C, human papillomavirus,
malaria, chikungunya, dengue, and the Zika virus. In the United States, we obtained Emergency Use Authorization (&#8220;EUA&#8221;) for
our Logix Smart COVID-19 detection test from the Food and Drug Administration, or FDA, and we sell that test to qualified labs. In addition,
our COVID-19 detection test and certain of our other suite of COVID-19 products have been approved for sale in countries such as the
United Kingdom, Australia and Mexico by the regulatory bodies in those countries and have been registered for sale in many more countries.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 28; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->28<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
addition to testing for infectious disease, the technology lends itself to identifying any section of a DNA or RNA strand that describes
any type of genetic trait, which creates several significant applications. We, in conjunction with our customers, are active in designing
and licensing tests that identify genetic traits in plant and animal genomes. We also have three multiplexed tests developed to test
mosquitos for the identification of diseases carried by the mosquitos to enable municipalities to concentrate their efforts in managing
mosquito populations on the specific areas known to be breeding the mosquitos that carry deadly viruses.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>RESULTS
OF OPERATIONS</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Results
of Operations for the Years Ended December 31, 2022 and 2021</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
table below provides a comparison of our operating results for the year ended December 31, 2022 as compared to the year ended December
31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Years Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Year Change</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Change</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">%</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 44%; padding-left: 0pt">Revenue</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">34,218,209</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">97,885,603</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">(63,667,394</td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">-65</td><td style="width: 1%; text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Cost of revenue</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">5,481,092</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">11,574,944</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(6,093,852</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-53</td><td style="padding-bottom: 1.5pt; text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Gross profit</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">28,737,117</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">86,310,659</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(57,573,542</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-67</td><td style="padding-bottom: 1.5pt; text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Operating expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Sales and marketing</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">7,344,628</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">13,397,813</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(6,053,185</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-45</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">General and administrative</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">14,262,963</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">11,550,615</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,712,348</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">23</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Research and development</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">17,438,098</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">14,961,916</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">2,476,182</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">17</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Depreciation and amortization</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,282,718</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">335,363</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">947,355</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">282</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Goodwill impairment charges</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">15,388,546</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">15,388,546</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt">Total operating expenses</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">55,716,953</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">40,245,707</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">15,471,246</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">38</td><td style="padding-bottom: 1.5pt; text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 30pt; padding-left: 0pt">Income (loss) from operations</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(26,979,836</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">46,064,952</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(73,044,788</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-159</td><td style="padding-bottom: 1.5pt; text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Other income (expense)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Interest income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">704,044</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">45,631</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">658,413</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1443</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Loss on disposition of assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(138,117</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(44,355</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(93,762</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">211</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 0pt; padding-left: 10pt">Gain on remeasurement of acquisition contingencies</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">7,899,644</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">7,899,644</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 0pt; padding-left: 10pt">Loss on equity method investment in joint venture</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(332,969</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(430,433</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">97,464</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-23</td><td style="padding-bottom: 1.5pt; text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt">Total other income (expense)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">8,132,602</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(429,157</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">8,561,759</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-1995</td><td style="padding-bottom: 1.5pt; text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Income (loss) before income taxes</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(18,847,234</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">45,635,795</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(64,483,029</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-141</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Income tax provision (benefit)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(4,608,985</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">8,977,231</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(13,586,216</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-151</td><td style="padding-bottom: 1.5pt; text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Net income (loss)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(14,238,249</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">36,658,564</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(50,896,813</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">-139</td><td style="padding-bottom: 2.5pt; text-align: left">%</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 29; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->29<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Revenues</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For
the year ended December 31, 2022, we generated $34.2 million of revenue compared to revenue of $97.9 million in the year ended December
31, 2021. The decrease in revenue of $63.7 million was primarily due to lower sales of our Logix Smart COVID-19 test throughout the world,
which was developed in response to the current COVID-19 pandemic. As global attention and regulatory responses to the COVID-19 pandemic have eased, we have experienced significantly
decreases in demand for our COVID-19 test. We anticipate that demand for our COVID-19 test will continue to normalize as concerns relating
to COVID-19 further wane.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Cost
of Revenues and Gross Profit</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cost
of revenues decreased by $6.1 million from $11.6 million for the year ended December 31, 2021 to $5.5 million for the year ended December
31, 2022. The decrease in revenues combined with a larger percentage of fixed product manufacturing costs resulted in a lower cost of
revenues and gross margin percentage. Our gross margin was 84.0% for the year ended December 31, 2022 compared to 88.2% for the year
ended December 31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Operating
Expenses</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
incurred total operating expenses of $55.7 million for the year ended December 31, 2022 compared to total operating expenses of $40.2
million for the year ended December 31, 2021. The increase in operating expenses was primarily due to the impairment of goodwill recorded
in conjunction with the acquisitions of IdMo and ACI, increases in depreciation and amortization of capital and intangible assets, increased
expenses related to personnel, including stock-based compensation, and increased investment in research and development, offset by decreased
sales and marketing expenses, including third party sales commissions, in relation to the reduction of revenue.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Sales
and marketing expenses for the year ended December 31, 2022 were $7.3 million compared to $13.4 million for the year ended December 31,
2021. The decrease of $6.1 million was primarily a result of decreased variable compensation, such as bonuses and commissions, and decreased
third-party sales commissions, partially offset by increased stock-based compensation expense.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">General
and administrative expenses increased $2.7 million from $11.6 million for the year ended December 31, 2021 to $14.3 million for the year
ended December 31, 2022. The increase in general and administrative expenses was primarily due to increased insurance expense and professional,
legal, and advisory fees, as well as increased stock-based compensation expense, partially offset by decreased variable compensation
expense.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
research and development expenses increased by $2.4 million from $15.0 million for the year ended December 31, 2021, to $17.4 million
for the year ended December 31, 2022. The primary increase in expenses related to increased personnel expenses in conjunction with our
acquisitions of IdMo and ACI on December 31, 2021, the primary focus of which relates to the point-of-care device development, as well
as increased stock-based compensation expense. Additionally, there has been an increase in professional and lab services utilized to
further help us in our research and product development activities.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2022, the Company recognized impairment charges of $15,388,546 related to goodwill recorded in conjunction
with the acquisitions of IdMo and ACI on December 31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Other
Income (Expense)</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Other
income was $8.1 million for the year ended December 31, 2022, compared to other expense of $0.4 million for the year ended December
31, 2021. The increase in other income of $8.6 million was primarily due to a change in the fair value of contingent consideration
liabilities recorded in conjunction with the acquisitions of IdMo and ACI and driven by changes in the Company&#8217;s stock price, as well as increased interest income due to higher
investment balances and interest rates in 2022 compared to 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 30; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->30<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Net
Income</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
realized a net loss for the year ended December 31, 2022 of $14.2 million compared to net income of $36.7 million for the year ended
December 31, 2021. The decrease in net income of $50.9 million was primarily the result of reduced sales of our Logix Smart COVID-19
test, increased operating expenses as discussed above, and impairment of the goodwill recorded in conjunction with the acquisitions of
IdMo and ACI, partially offset by gains related to change in the fair value of acquisition related contingent liabilities. Additionally,
we recorded an income tax benefit of $4.6 million during the year ended December 31, 2022, compared to income tax expense of $9.0 million
for the year ended December 31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>LIQUIDITY
AND CAPITAL RESOURCES</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">At
December 31, 2022, we had cash and cash equivalents of $23.0 million and marketable investment securities of $58.3 million. We consider
our marketable investment securities an important part of our liquidity and focus such investments in securities that can readily be
converted into cash if needed. Additionally, our total current assets at December 31, 2022, were $92.7 million compared to total current
liabilities of $3.9 million.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net
cash provided by operating activities during the year ended December 31, 2022 was $6.6 million, compared to $41.1 million for the year
ended December 31, 2021. The decrease in cash from operating activities was primarily due to our decreased revenue and accounts receivable.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
used $58.2 million of cash in investing activities during the year ended December 31, 2022 as compared to $4.1 million of cash from investing
activities during the year ended December 31, 2021. The increase in cash used in investing activities is primarily due to purchases of
marketable investment securities.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net
cash used in financing activities was $14.0 million for the year ended December 31, 2022, compared to $0.5 million of cash from financing
activities for the year ended December 31, 2021. The decrease is primarily due to the repurchase of outstanding common shares during
the current fiscal year.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Since
commencing sales of our Logix Smart COVID-19 test in March 2020, we have used our cash generated from those sales to fund the purchase
of inventories and the development of our point-of-care device, and to pay our operating expenses. We have increased our work force most
significantly in research and development in order to continue development of a new device and additional tests that will enable continued
use of our distributor network to sell additional products throughout the world.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
believe that our existing capital resources and the cash generated from future sales will be sufficient to meet our projected operating
requirements for the next 12 months. However, <span style="background-color: white">our available capital resources may be consumed more
rapidly than currently expected and we may need or want to raise additional financing for strategic opportunities. If needed, we expect
additional investment capital to come from (i) additional issuances of our common stock with existing and new investors or (ii) the private
placement of other securities with investors similar to those that have provided funding in the past. We may not be able to secure such
financing in a timely manner or on favorable terms, if at all.</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>CRITICAL
ACCOUNTING POLICIES AND ESTIMATES</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
management&#8217;s discussion and analysis of our financial condition and results of operations is based on our consolidated financial
statements, which have been prepared in accordance with United States generally accepted accounting principles (&#8220;GAAP&#8221;).
The preparation of these financial statements requires us to make estimates and assumptions that affect the reported amounts of assets
and liabilities and the disclosure of contingent assets and liabilities at the date of the financial statements, as well as the reported
revenues and expenses incurred during the reporting periods. Our estimates are based on our historical experience and on various other
factors that we believe are reasonable under the circumstances. Actual results may differ from these estimates under different assumptions
or conditions. While our significant accounting policies are described in Item 8 of this Annual Report on Form 10-K, within Note 2 of
our consolidated financial statements in the section titled &#8220;Summary of Significant Accounting Policies&#8221;, we believe that
the accounting policies discussed below are critical to understanding our historical and future performance, as these policies relate
to the more significant areas involving management&#8217;s judgments and estimates.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Accounts
Receivable</i></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Trade
accounts receivable are recorded at the invoiced amount, net of any allowance. The Company maintains an allowance for doubtful accounts
for amounts the Company does not expect to collect. In establishing the required allowance, management considers historical losses, current
market condition, customers&#8217; financial condition, the age of receivables, and current payment patterns. Account balances are written
off against the allowance once the receivable is deemed uncollectible. If actual accounts receivable collections are less favorable than
those projected by management at the time of the assessment, however, additional accounts receivable write-downs may be required, which
could reduce our earnings.</span></p>

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

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

<!-- Field: Page; Sequence: 31; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->31<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Goodwill
and Intangible Assets </i></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
useful lives of intangible assets with definite lives are based on the expected number of years the asset will generate revenue or otherwise
be used by us and the related amortization is based on the straight-line method. Goodwill, which has an indefinite life, is not amortized
but instead is tested at least annually for impairment, or more frequently when events or changes in circumstances indicate that the
asset might be impaired. Examples of such events or circumstances include:</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#9679; <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the
asset&#8217;s ability to continue to generate income from operations and positive cash flow in future periods;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#9679;<span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">
any volatility or significant decline in our stock price and market capitalization compared to our net book value;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#9679;<span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">
loss of legal ownership or title to an asset;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#9679; <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">significant
changes in our strategic business objectives and utilization of our assets; and</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify">&#9679; <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">the
impact of significant negative industry or economic trends.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">If
a change were to occur in any of the above-mentioned factors or estimates, the likelihood of a material change in our reported results
would increase. For goodwill, the entity has the option to first assess qualitative factors to determine whether it is necessary to perform
the quantitative goodwill impairment test. The quantitative impairment test compares the fair value of a reporting unit with the carrying
amount, including goodwill. If the fair value of a reporting unit exceeds its carrying amount, goodwill is considered not impaired; otherwise,
goodwill is impaired and the loss is recorded. We completed our annual evaluation for impairment of goodwill as of December 31, 2022
and recorded a goodwill impairment charge of $15,388,546.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Accounting
for Business Combinations</i></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Under
the acquisition method of accounting, the cost of an acquired business is assigned to the tangible and identifiable intangible assets
acquired and liabilities assumed on the basis of the estimated fair values at the date of acquisition. We assess fair value, which is
the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants
at the measurement date, using a variety of methods including, but not limited to, an income approach and a market approach, such as
the estimation of future cash flows of the acquired business and current selling prices of similar assets. These valuations require us
to make estimates and assumptions, especially with respect to intangible assets. Fair value of the assets acquired and liabilities assumed,
including intangible assets, in-process research and development, and contingent payments, are measured based on the assumptions and
estimations with regards to variable factors such as the amount and timing of future cash flows for the asset or liability being measured,
appropriate risk-adjusted discount rates, or other factors that market participants would consider. Upon acquisition, we determine the
estimated economic lives of the acquired intangible assets for amortization purposes, which are based on the underlying expected cash
flows of such assets. Goodwill is an asset representing the future economic benefits arising from other assets acquired in a business
combination that is not individually identified and separately recognized. Actual results may vary from projected results and assumptions
used in the fair value assessments. If the initial accounting for a business combination is incomplete by the end of a reporting period
that falls within the measurement period, we report provisional amounts in our financial statements. During the measurement period, we
adjust the provisional amounts recognized at the acquisition date to reflect new information obtained about facts and circumstances that
existed as of the acquisition date that, if known, would have affected the measurement of the amounts recognized as of that date. We
record these adjustments to the provisional amounts with a corresponding offset to goodwill. Any adjustments identified after the measurement
period are recorded in the Consolidated Statements of Operations and Comprehensive Income (Loss).</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Inventories
</i></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
periodically review inventory for both potential obsolescence and potential declines in anticipated selling prices. In this review, we
make assumptions about the future demand for and market value of the inventory and based on these assumptions estimate the amount of
any obsolete, unmarketable, slow moving or overvalued inventory. We write down the value of our inventories by an amount equal to the
difference between the cost of the inventory and the net realizable value. If actual market conditions are less favorable than those
projected by management at the time of the assessment, however, additional inventory write-downs may be required, which could reduce
our earnings.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Income
Taxes </i></b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Significant
judgment is required in determining our provision for income taxes, current tax assets and liabilities, deferred tax assets and liabilities,
and our future taxable income, both as a whole and in various tax jurisdictions, for purposes of assessing our ability to realize future
benefit from our deferred tax assets. We recognize in the financial statements the impact of a tax position if that position is more
likely than not to be sustained during an audit, including resolution of related appeals or litigation processes, if any. While we believe
that we have appropriate support for the positions taken on our tax returns, we regularly assess the potential outcome of examinations
by tax authorities in determining the adequacy of our provision for income taxes. See Note 12 to our Consolidated Financial Statements
for more information on income taxes.</span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
foregoing estimates, expectations and forward-looking statements are subject to change as we make strategic operating decisions from
time to time and as our revenue and expenses fluctuate from period to period.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_013"></span>ITEM
7A. QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Not
required.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 32; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->32<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_012"></span>ITEM
8. FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA.</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>CONSOLIDATED
FINANCIAL STATEMENTS</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>DECEMBER
31, 2022 AND 2021</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span style="text-decoration: underline">Table
of Contents</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#f_001">Report of Independent Registered Public Accounting Firm</a> (PCAOB ID No. <span id="xdx_909_edei--AuditorFirmId_c20220101__20221231_zE8UKAwknPNc"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:AuditorFirmId">457</ix:nonNumeric></span>)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 10px"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.5in; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">34</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="#f_002">Balance Sheets</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">35</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#f_003"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Statements of Operations</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">36</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#f_004"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Statement of Changes in Stockholders&#8217; Equity </span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">37</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: #CCEEFF">
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#f_005"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Statements of Cash Flows</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">38</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif"><a href="#f_006"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Notes to Financial Statements</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">39</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 33; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->33<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="f_001"></span>REPORT
OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">To
the Board of Directors and Stockholders of Co-Diagnostics, Inc.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Opinion
on the Financial Statements</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We have audited the accompanying consolidated balance sheets of Co-Diagnostics,
Inc (the Company) as of December 31, 2022 and 2021, and the related consolidated statements of operations and comprehensive income (loss),
changes in stockholders&#8217; equity, and cash flows for each of the years in the two-year period ended December 31, 2022, and the related
notes (collectively referred to as the financial statements). In our opinion, the financial statements present fairly, in all material
respects, the financial position of the Company as of December 31, 2022 and 2021, and the results of its operations and its cash flows
for each of the years in the two-year period ended December 31, 2022, in conformity with accounting principles generally accepted in the
United States of America.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Basis
for Opinion</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">These
financial statements are the responsibility of the Company&#8217;s management. Our responsibility is to express an opinion on the Company&#8217;s
financial statements based on our audits. We are a public accounting firm registered with the Public Company Accounting Oversight Board
(United States) (PCAOB) and are required to be independent with respect to the Company in accordance with the U.S. federal securities
laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain
reasonable assurance about whether the financial statements are free of material misstatement, whether due to error or fraud. The Company
is not required to have, nor were we engaged to perform, an audit of its internal control over financial reporting. As part of our audits,
we are required to obtain an understanding of internal control over financial reporting, but not for the purpose of expressing an opinion
on the effectiveness of the Company&#8217;s internal control over financial reporting. Accordingly, we express no such opinion.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
audits included performing procedures to assess the risks of material misstatement of the financial statements, whether due to error
or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding
the amounts and disclosures in the financial statements. Our audits also included evaluating the accounting principles used and significant
estimates made by management, as well as evaluating the overall presentation of the financial statements. We believe that our audits
provide a reasonable basis for our opinion.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Critical
Audit Matters</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
critical audit matters communicated below are matters arising from the current period audit of the financial statements that were communicated
or required to be communicated to the audit committee and that: (1) relate to accounts or disclosures that are material to the financial
statements and (2) involved especially challenging, subjective, or complex judgments. The communication of critical audit matters does
not alter in any way our opinion on the financial statements, taken as a whole, and we are not, by communicating the critical audit matters
below, providing separate opinions on the critical audit matters or on the accounts or disclosures to which they relate.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><i>Goodwill
and Intangible Assets</i></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
discussed in Note 4 and in Note 7 to the consolidated financial statements, the Company acquired Idaho Molecular, Inc., and Advanced
Conceptions, Inc. in December 2021. As part of the transaction, the Company acquired intangible assets totaling $27,195,000, and goodwill
totaling $15,388,546. The Company assesses these assets for impairment at least annually or whenever events or changes in circumstances
occur that may indicate impairment. The Company&#8217;s analysis for the year ended December 31, 2022, required significant judgment
to create a valuation based on future cash flows. As a result of their analysis, the Company fully impaired its goodwill, while no impairment
was recorded for the intangible assets.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
identified the carrying amount of goodwill and intangible assets as a critical audit matter because management&#8217;s assessment of
the acquisition is highly subjective. This required an increased amount of effort, including the need to involve our internal valuation
specialist, when performing audit procedures to evaluate the reasonableness of management&#8217;s estimates and assumptions.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Addressing
the matter involved performing procedures and evaluating audit evidence in connection with forming our overall opinion on the consolidated
financial statements. These procedures included, among others, gaining an understanding of management&#8217;s process for developing the fair
value estimate. We also evaluated the expertise, qualifications, and independence of management&#8217;s specialist engaged to complete
the evaluation. We used professionals inside our firm with specialized skills and knowledge to assess the Company&#8217;s methodology.
We considered the inputs, sources of data used, assumptions, and estimates used in the valuation model. We tested the mathematical accuracy
of the underlying schedules used in the valuation assessment to ensure the completeness and accuracy of the reports. Finally, we considered
the sensitivity of changes to key assumptions in the model.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">/s/
<span id="xdx_906_edei--AuditorName_c20220101__20221231_zJanvIIAfcE4"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:AuditorName">Haynie &amp; Company</ix:nonNumeric></span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_904_edei--AuditorLocation_c20220101__20221231_zoplC1V7enB7"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" name="dei:AuditorLocation">Salt
Lake City, Utah</ix:nonNumeric></span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">March
16, 2023</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have served as the Company&#8217;s auditor since 2016.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 34; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->34<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>CO-DIAGNOSTICS,
INC. AND SUBSIDIARIES</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="f_002"></span>CONSOLIDATED
BALANCE SHEETS</b></span></p>

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

<table cellpadding="0" cellspacing="0" id="xdx_30D_111_z7LXefHzf9sh" summary="xdx: Statement - Consolidated Balance Sheets" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td><p style="margin-top: 0pt; margin-bottom: 0pt">&#160;</p>
        <p style="margin-top: 0pt; margin-bottom: 0pt">&#160;</p></td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_495_20221231_zdc0Tznti8R1" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" id="xdx_494_20211231_zcLqZt2xSCtg" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td><td style="font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--AssetsAbstract_iB_zYt6SjgD6dMd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-left: 0pt">Assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--AssetsCurrentAbstract_i01B_zxhChGwfTBW1" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Current assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--CashAndCashEquivalentsAtCarryingValue_i02I_maACzmX2_zq2LJbTNDqI2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left; text-indent: 10pt; padding-left: 0pt">Cash and cash equivalents</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">22,973,803</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">88,607,234</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--MarketableSecuritiesCurrent_i02I_maACzmX2_zwEW91k6OSNc" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Marketable investment securities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:MarketableSecuritiesCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">58,289,066</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:MarketableSecuritiesCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,255,266</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--AccountsReceivableNetCurrent_i02I_maACzmX2_zxAQExFvMXD1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Accounts receivable, net</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,453,723</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">20,839,182</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--InventoryNet_i02I_maACzmX2_zgGQBantQnjb" style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 10pt; padding-left: 0pt">Inventory</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,310,473</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,004,169</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--IncomeTaxReceivable_i02I_maACzmX2_z6zaEpPpv51d" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Income taxes receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxReceivable" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,870,419</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0066">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--PrepaidExpenseAndOtherAssetsCurrent_i02I_maACzmX2_z9rLx2AWSyBg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Prepaid expenses and other current assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">761,186</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,338,444</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--NotesAndLoansReceivableNetCurrent_i02I_maACzmX2_zfMNkeWo1NC7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Note receivable</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NotesAndLoansReceivableNetCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">75,000</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NotesAndLoansReceivableNetCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">75,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--AssetsCurrent_i02TI_mtACzmX2_maCzXMA_zJzhHEsj1sv8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Total current assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AssetsCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">92,733,670</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AssetsCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">115,119,295</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--PropertyPlantAndEquipmentNet_i01I_maCzXMA_zWNv3rKL95Qh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Property and equipment, net</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,539,483</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,933,216</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--OperatingLeaseRightOfUseAsset_i01I_maCzXMA_zRFJJO3rEf8f" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Operating lease right-of-use asset</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">372,115</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0081">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--Goodwill_i01I_maCzXMA_zDz0lLZpa9a7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-indent: 10pt; padding-left: 0pt">Goodwill</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0083">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">14,706,818</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--IntangibleAssetsNetExcludingGoodwill_i01I_maCzXMA_z7epJob6F5ub" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Intangible assets, net</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">26,768,333</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">27,195,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--RealEstateInvestmentsJointVentures_i01I_maCzXMA_z0NnSFZMxMc3" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Investment in joint venture</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:RealEstateInvestmentsJointVentures" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">672,679</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:RealEstateInvestmentsJointVentures" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,004,953</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--NotesAndLoansReceivableNetNoncurrent_i01I_maCzXMA_zYS9hdE0WBqj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Note receivable</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0092">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NotesAndLoansReceivableNetNoncurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">75,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--Assets_i01TI_mtCzXMA_zwydK2XRzdz5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Total assets</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:Assets" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">123,086,280</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:Assets" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">160,034,282</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LiabilitiesAndStockholdersEquityAbstract_iB" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-left: 0pt">Liabilities and stockholders&#8217; equity</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--LiabilitiesCurrentAbstract_i01B_zzF7wK6wZufa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Current liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--AccountsPayableCurrent_i02I_maCzks6_zwnThcpMF5tf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Accounts payable</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">952,297</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">607,506</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--AccruedLiabilitiesCurrent_i02I_maCzks6_zwZPxjwHdoK3" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Accrued expenses, current</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">934,447</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,859,652</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--OperatingLeaseLiabilityCurrent_i02I_maCzks6_zSZKTHClMEId" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Operating lease liability, current</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">297,209</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0111">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--AssetAcquisitionContingentConsiderationLiabilityCurrent_i02I_maCzks6_zoYggbKPs4Bh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Contingent consideration liabilities, current</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AssetAcquisitionContingentConsiderationLiabilityCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,689,471</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AssetAcquisitionContingentConsiderationLiabilityCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,767,304</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--TaxesPayableCurrent_i02I_maCzks6_z735a7kJvoEj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Income taxes payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0116">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:TaxesPayableCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,213,088</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--ContractWithCustomerLiabilityCurrent_i02I_maCzks6_zHEdBtzS91Wj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Deferred revenue</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0119">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">150,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--LiabilitiesCurrent_i02TI_mtCzks6_maCzy1K_zkEpDpufgXtg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Total current liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,873,424</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,597,550</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--LiabilitiesNoncurrentAbstract_i01B_zsdYbmYsHvjk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Long-term liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_ecustom--TaxesPayableNoncurrent_i02I_maCzCkI_zyjhkqjxUCnj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Income taxes payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="CODX:TaxesPayableNoncurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,181,284</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="CODX:TaxesPayableNoncurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,067,853</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--DeferredIncomeTaxLiabilitiesNet_i02I_maCzCkI_zUDriJGJqTj8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Deferred tax liability</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilitiesNet" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,417,987</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilitiesNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,228,444</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--OperatingLeaseLiabilityNoncurrent_i02I_maCzCkI_zKhLMYWu4Wdg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Operating lease liability</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">50,708</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0135">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--AssetAcquisitionContingentConsiderationLiabilityNoncurrent_i02I_maCzCkI_zFsj7SfkOdR6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Contingent consideration liabilities</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:AssetAcquisitionContingentConsiderationLiabilityNoncurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,042,885</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:AssetAcquisitionContingentConsiderationLiabilityNoncurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,665,337</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--LiabilitiesNoncurrent_i02TI_mtCzCkI_maCzy1K_z9838B2NUx5g" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Total long-term liabilities</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesNoncurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,692,864</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesNoncurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,961,634</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--Liabilities_i01TI_mtCzy1K_maLASEzyJP_zSjTyZt7jyPk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Total liabilities</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:Liabilities" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">8,566,288</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:Liabilities" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">25,559,184</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--CommitmentsAndContingencies_i01I_maLASEzyJP_zs7gu7OQ5NJ1" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-left: 0pt">Commitments and contingencies (Note 13)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--StockholdersEquityAbstract_i01B" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-left: 0pt">Stockholders&#8217; equity</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--PreferredStockValue_i02I_maSEzwPK_zmBy0JahSCLg" style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 0pt; padding-left: 20pt">Convertible preferred stock, $<span id="xdx_90D_eus-gaap--PreferredStockParOrStatedValuePerShare_iI_c20221231_zG44XZHaev34" title="Convertible preferred stock, par value"><span id="xdx_901_eus-gaap--PreferredStockParOrStatedValuePerShare_iI_c20211231_zPa9iXNYNTnh" title="Convertible preferred stock, par value"><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares"><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.001</ix:nonFraction></ix:nonFraction></span></span> par value; <span id="xdx_907_eus-gaap--PreferredStockSharesAuthorized_iI_c20221231_ztTuobm2FAcb" title="Convertible preferred stock , shares authorized"><span id="xdx_904_eus-gaap--PreferredStockSharesAuthorized_iI_c20211231_z0pdC3QAh1p4" title="Convertible preferred stock , shares authorized"><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">5,000,000</ix:nonFraction></ix:nonFraction></span></span> shares authorized; <span id="xdx_901_eus-gaap--PreferredStockSharesIssued_iI_do_c20221231_zBvP4Yt8fuBe" title="Convertible preferred stock, shares issued"><span id="xdx_90F_eus-gaap--PreferredStockSharesOutstanding_iI_do_c20221231_zLttS1kDJpc2" title="Convertible preferred stock, shares outstanding"><span id="xdx_909_eus-gaap--PreferredStockSharesIssued_iI_do_c20211231_zJISU2zDoT0i" title="Convertible preferred stock, shares issued"><span id="xdx_90E_eus-gaap--PreferredStockSharesOutstanding_iI_do_c20211231_zBpD6BYzaiTh" title="Convertible preferred stock, shares outstanding"><ix:nonFraction name="us-gaap:PreferredStockSharesIssued" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:PreferredStockSharesOutstanding" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:PreferredStockSharesIssued" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:PreferredStockSharesOutstanding" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">0</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></span></span></span></span> shares issued and outstanding as of December 31, 2022 and December 31, 2021, respectively</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0152">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0153">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--CommonStockValue_i02I_maSEzwPK_zws4y7DxOXLf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-indent: 0pt; padding-left: 20pt">Common stock, $<span id="xdx_903_eus-gaap--CommonStockParOrStatedValuePerShare_iI_c20221231_z8nMvTNQd1zf" title="Common stock, par value"><span id="xdx_908_eus-gaap--CommonStockParOrStatedValuePerShare_iI_c20211231_zOXVL5aAAHA5" title="Common stock, par value"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.001</ix:nonFraction></ix:nonFraction></span></span> par value; <span id="xdx_902_eus-gaap--CommonStockSharesAuthorized_iI_c20221231_z5nlsSjXWisk" title="Common stock, shares authorized"><span id="xdx_903_eus-gaap--CommonStockSharesAuthorized_iI_c20211231_zAaGeTtEl5N1" title="Common stock, shares authorized"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">100,000,000</ix:nonFraction></ix:nonFraction></span></span> shares authorized; <span id="xdx_90E_eus-gaap--CommonStockSharesIssued_iI_c20221231_zHXqNhGvL8wf" title="Common stock, shares issued"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">34,754,265</ix:nonFraction></span> shares issued and <span id="xdx_906_eus-gaap--CommonStockSharesOutstanding_iI_c20221231_zZJtCpaeZklk" title="Common stock, shares outstanding"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">30,872,607</ix:nonFraction></span> shares outstanding as of December 31, 2022 and <span id="xdx_905_eus-gaap--CommonStockSharesIssued_iI_c20211231_zUoDdgwm9Ex" title="Common stock, shares issued"><span id="xdx_90C_eus-gaap--CommonStockSharesOutstanding_iI_c20211231_zDKDvLknYxS5" title="Common stock, shares outstanding"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">33,819,862</ix:nonFraction></ix:nonFraction></span></span> shares issued and outstanding as of December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CommonStockValue" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">34,754</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CommonStockValue" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">33,820</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--TreasuryStockValue_i02NI_di_msSEzwPK_zjGRCwk7fMp8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 0pt; padding-left: 20pt">Treasury stock, at cost; <span id="xdx_905_eus-gaap--TreasuryStockShares_iI_c20221231_z1z09hfxzRp3" title="Treasury stock, shares"><ix:nonFraction name="us-gaap:TreasuryStockShares" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">3,881,658</ix:nonFraction></span> and <span id="xdx_90D_eus-gaap--TreasuryStockShares_iI_c20211231_zv81eGpT6FK5" title="Treasury stock, shares"><ix:nonFraction name="us-gaap:TreasuryStockShares" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">0</ix:nonFraction></span> shares held as of December 31, 2022 and December 31, 2021, respectively</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:TreasuryStockValue" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">14,211,866</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0191">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--AdditionalPaidInCapital_i02I_maSEzwPK_z434zSJSMGul" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Additional paid-in capital</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AdditionalPaidInCapital" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">88,472,934</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AdditionalPaidInCapital" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">80,271,999</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--AccumulatedOtherComprehensiveIncomeLossNetOfTax_i02I_maSEzwPK_zZdfMqM9Edtd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Accumulated other comprehensive income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">293,140</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0201">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--RetainedEarningsAccumulatedDeficit_i02I_maSEzwPK_z61bpWnVsIgj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Accumulated earnings</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">39,931,030</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">54,169,279</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--StockholdersEquity_i02TI_pp0p0_mtSEzwPK_maLASEzyJP_z5ACWHHESUag" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Total stockholders&#8217; equity</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">114,519,992</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">134,475,098</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--LiabilitiesAndStockholdersEquity_i01TI_pp0p0_mtLASEzyJP_z27boKBWUAja" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 20pt">Total liabilities and stockholders&#8217; equity</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">123,086,280</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">160,034,282</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">See
accompanying notes to consolidated financial statements.</span></p>

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


<!-- Field: Page; Sequence: 35; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->35<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>CO-DIAGNOSTICS,
INC. AND SUBSIDIARIES</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="f_003"></span>CONSOLIDATED
STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS)</b></span></p>

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

<table cellpadding="0" cellspacing="0" id="xdx_302_113_z0SxaTOiEqd8" summary="xdx: Statement - Consolidated Statements of Operations and Comprehensive Income (Loss)" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_498_20220101__20221231_zqR3RCfrvYU5" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20210101__20211231_zVnTZvYz0Rta" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Years Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--RevenueFromContractWithCustomerExcludingAssessedTax_maCz4bE_zN4Pdn2wVyRk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; padding-left: 0pt">Revenue</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">34,218,209</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">97,885,603</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--CostOfRevenue_msCz4bE_zAdYEz4D6WE7" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Cost of revenue</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CostOfRevenue" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,481,092</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CostOfRevenue" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">11,574,944</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--GrossProfit_iT_mtCz4bE_maCzrpW_zH4LuquPIhMg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Gross profit</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:GrossProfit" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">28,737,117</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:GrossProfit" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">86,310,659</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--OperatingExpensesAbstract_iB_zgd31uiymHV6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Operating expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--SellingAndMarketingExpense_i01_maCzgMF_zzOl9OaERaF5" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Sales and marketing</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:SellingAndMarketingExpense" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,344,628</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:SellingAndMarketingExpense" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">13,397,813</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--GeneralAndAdministrativeExpense_i01_maCzgMF_zabF3yWCr708" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">General and administrative</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">14,262,963</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">11,550,615</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--ResearchAndDevelopmentExpense_i01_maCzgMF_zYs6U7rRNnBc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Research and development</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">17,438,098</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">14,961,916</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--DepreciationAndAmortization_i01_maCzgMF_z7qJLTsv4cn5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Depreciation and amortization</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationAndAmortization" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,282,718</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationAndAmortization" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">335,363</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--GoodwillImpairmentLoss_i01_maCzgMF_zp3mCOkEfnVh" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Goodwill impairment charges</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:GoodwillImpairmentLoss" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">15,388,546</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0237">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--OperatingExpenses_i01T_mtCzgMF_msCzrpW_z1E3U2xU5Xu9" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt">Total operating expenses</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingExpenses" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">55,716,953</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingExpenses" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">40,245,707</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--OperatingIncomeLoss_iT_mtCzrpW_maCzc8G_zkpZPe2gApNg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 30pt; padding-left: 0pt">Income (loss) from operations</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">26,979,836</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">46,064,952</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--NonoperatingIncomeExpenseAbstract_iB_zcJFPRXem7hl" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Other income (expense)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--InterestIncomeOther_i01_maCz60K_zCFECyFH2ib7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Interest income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InterestIncomeOther" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">704,044</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:InterestIncomeOther" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">45,631</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--GainLossOnDispositionOfAssets1_i01_maCz60K_zab6CmCx8Koe" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Loss on disposition of assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets1" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">138,117</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets1" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">44,355</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_406_ecustom--GainOnRemeasurementOfAcquisitionContingencies_i01_maCz60K_zr9QRdTKbHJl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Gain on remeasurement of acquisition contingencies</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="CODX:GainOnRemeasurementOfAcquisitionContingencies" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,899,644</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0255">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--GainLossOnSaleOfInvestments_i01_pp0p0_maCz60K_zbiD3iPrPKPd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Loss on equity method investment in joint venture</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:GainLossOnSaleOfInvestments" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">332,969</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:GainLossOnSaleOfInvestments" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">430,433</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--NonoperatingIncomeExpense_i01T_mtCz60K_maCzc8G_zezMdsmrOmm8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt">Total other income (expense)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">8,132,602</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">429,157</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_iT_mtCzc8G_maCzxGD_zjx2TvuwFQVe" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Income (loss) before income taxes</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">18,847,234</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">45,635,795</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--IncomeTaxExpenseBenefit_msCzxGD_z9JVlQMdLjhf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Income tax provision (benefit)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">4,608,985</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">8,977,231</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--NetIncomeLoss_iT_mtCzxGD_maCINOTzPOW_zHi2cZsmmfw7" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Net income (loss)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">14,238,249</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">36,658,564</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_iB_zcHUmTWqOEk9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Other comprehensive income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_maOCILBzw2V_zjzHrBbgz8Xd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Change in net unrealized gains on marketable securities, net of tax</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">293,140</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0276">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--OtherComprehensiveIncomeLossBeforeTax_mtOCILBzw2V_maCINOTzPOW_z7DpxaaXAiV1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total other comprehensive income</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossBeforeTax" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">293,140</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0279">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--ComprehensiveIncomeNetOfTax_iT_mtCINOTzPOW_zTTkKq15oiha" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Comprehensive income (loss)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">13,945,109</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">36,658,564</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--EarningsPerShareBasicAbstract_iB_zTHzCuFrXDwi" style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 0pt">Earnings per common share:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--EarningsPerShareBasic_i01_zRqzElasbEQa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-indent: 10pt; padding-left: 0pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" sign="-" unitRef="USDPShares">0.45</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.27</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--EarningsPerShareDiluted_i01_zPK2ML7GJKNf" style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 10pt; padding-left: 0pt">Diluted</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" sign="-" unitRef="USDPShares">0.45</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.23</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_iB_z2D4Af4Qxo71" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Weighted average shares outstanding:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_i01_zLb5IhhOaOX3" style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 10pt; padding-left: 0pt">Basic</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">31,479,028</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">28,874,555</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_i01_zwGASiqoYre9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-indent: 10pt; padding-left: 0pt">Diluted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">31,479,028</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">29,903,686</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">See
accompanying notes to consolidated financial statements.</span></p>

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


<!-- Field: Page; Sequence: 36; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->36<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>CO-DIAGNOSTICS,
INC. AND SUBSIDIARIES</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="f_004"></span>CONSOLIDATED
STATEMENT OF CHANGES IN STOCKHOLDERS&#8217; EQUITY</b></span></p>

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

<table cellpadding="0" cellspacing="0" id="xdx_300_114_zvcsKltmgoT2" summary="xdx: Statement - Consolidated Statement of Changes in Stockholders&apos; Equity" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Shares</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" id="xdx_4B3_us-gaap--StatementClassOfStockAxis_us-gaap--ConvertiblePreferredStockMember_us-gaap--StatementEquityComponentsAxis_us-gaap--PreferredStockMember_zAWmE1IXZ7L2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Amount</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Shares</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" id="xdx_4B1_us-gaap--StatementEquityComponentsAxis_us-gaap--CommonStockMember_z8F4AIhn0ZWl" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Amount</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" id="xdx_4B5_us-gaap--StatementEquityComponentsAxis_us-gaap--TreasuryStockMember_zCH1NlyiAOwd" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Stock</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" id="xdx_4B9_us-gaap--StatementEquityComponentsAxis_us-gaap--AdditionalPaidInCapitalMember_z6YtAxLnkOS7" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Capital</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" id="xdx_4B8_us-gaap--StatementEquityComponentsAxis_us-gaap--AccumulatedOtherComprehensiveIncomeMember_zMB3egxusAwa" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Income</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" id="xdx_4BD_us-gaap--StatementEquityComponentsAxis_us-gaap--RetainedEarningsMember_zym4cQLXUX57" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Earnings</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" id="xdx_4B1_zSVdo79w78Eh" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Equity</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr style="vertical-align: bottom">
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Convertible
    Preferred Stock</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Common
    Stock</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Treasury</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Additional
    Paid-in</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Accumulated
    Other Comprehensive</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Accumulated</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Total
    Stockholders&#8217;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr style="vertical-align: bottom">
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Shares</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Amount</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Shares</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Amount</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Stock</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Capital</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Income</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Earnings</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Equity</span></td><td style="font-weight: bold"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr id="xdx_430_c20210101__20211231_eus-gaap--StockholdersEquity_iS_ziVeYSLc1Tli" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 45%"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Balance as of December 31, 2020</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_988_eus-gaap--SharesOutstanding_iS_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--PreferredStockMember__us-gaap--StatementClassOfStockAxis__us-gaap--ConvertiblePreferredStockMember_zUr2GkVMb5v7" title="Balance, shares" style="width: 3%; text-align: right">&#160;&#160;&#160;&#160;&#160;<span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0310">-</span></span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="width: 3%; text-align: right">&#160;&#160;&#160;&#160;&#160;&#160;<span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0302">-</span></span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid; width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_98A_eus-gaap--SharesOutstanding_iS_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zxvkJu0M6N4l" title="Balance, shares" style="width: 3%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2020-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">28,558,033</ix:nonFraction></span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="width: 3%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2020-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">28,558</ix:nonFraction></span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="width: 3%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0304">-</span></span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="width: 3%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2020-12-31_us-gaap_AdditionalPaidInCapitalMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">49,157,236</ix:nonFraction></span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="width: 3%; text-align: right">&#160;&#160;&#160;&#160;&#160;&#160;<span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0306">-</span></span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="width: 3%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2020-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">17,510,715</ix:nonFraction></span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="width: 3%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">66,696,509</ix:nonFraction></span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr id="xdx_40C_eus-gaap--StockIssuedDuringPeriodValueStockOptionsExercised_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Common stock issued for option
    exercises</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0314">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_98D_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zMVTEIlETlVe" title="Common stock issued for option exercises, shares" style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">189,225</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">189</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="From2021-01-012021-12-31_us-gaap_AdditionalPaidInCapitalMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">450,209</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0318">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0319">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">450,398</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr id="xdx_408_eus-gaap--StockIssuedDuringPeriodValueShareBasedCompensationGross_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Stock-based compensation expense</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0324">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_98D_eus-gaap--StockIssuedDuringPeriodSharesShareBasedCompensationGross_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zveiRST4CXX8" title="Stock-based compensation expense, shares" style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">444,050</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">444</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="display: none; font-family: Times New Roman, Times, Serif; font-size: 10pt"><span style="-sec-ix-hidden: xdx2ixbrl0326">-</span></span><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" contextRef="From2021-01-012021-12-31_us-gaap_AdditionalPaidInCapitalMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,508,960</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0328">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0329">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,509,404</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr id="xdx_406_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_zGFf18ao4PVk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Common stock issued for acquisitions</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0334">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_98C_eus-gaap--StockIssuedDuringPeriodSharesAcquisitions_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zuVKkCMq6jpb" title="Common stock issued for acquisitions, shares" style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesAcquisitions" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">4,628,554</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,629</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2021-01-012021-12-31_us-gaap_AdditionalPaidInCapitalMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">25,155,594</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0338">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0339">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">25,160,223</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr id="xdx_400_eus-gaap--NetIncomeLoss_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Net income</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0344">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0345">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0347">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0348">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">36,658,564</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">36,658,564</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr id="xdx_436_c20220101__20221231_eus-gaap--StockholdersEquity_iS_zwamXqbQDBN5" style="vertical-align: bottom; background-color: White">
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Balance as of December 31, 2021</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_98E_eus-gaap--SharesOutstanding_iS_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--PreferredStockMember__us-gaap--StatementClassOfStockAxis__us-gaap--ConvertiblePreferredStockMember_zLrD03QmvMEg" title="Balance, shares" style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0360">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0352">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_98C_eus-gaap--SharesOutstanding_iS_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zfolTZFw57cc" title="Balance, shares" style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">33,819,862</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">33,820</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0354">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31_us-gaap_AdditionalPaidInCapitalMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">80,271,999</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0356">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">54,169,279</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">134,475,098</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr id="xdx_439_c20220101__20221231_eus-gaap--StockholdersEquity_iS_zs8P4TnYYHhl" style="display: none; vertical-align: bottom; background-color: White">
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Balance</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_989_eus-gaap--SharesOutstanding_iS_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--PreferredStockMember__us-gaap--StatementClassOfStockAxis__us-gaap--ConvertiblePreferredStockMember_z1eNpOdUaoJ5" title="Balance, shares" style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0372">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0364">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_989_eus-gaap--SharesOutstanding_iS_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zlBuSl24f771" title="Balance, shares" style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">33,819,862</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">33,820</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0366">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31_us-gaap_AdditionalPaidInCapitalMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">80,271,999</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0368">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">54,169,279</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">134,475,098</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
<tr id="xdx_40E_eus-gaap--StockIssuedDuringPeriodValueStockOptionsExercised_z7NoCKsYuBB" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Common stock issued for option
    exercises</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0376">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_987_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zkshQ6Gi5KVj" title="Common stock issued for option exercises, shares" style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">70,791</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">70</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0378">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">77,800</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0380">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0381">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">77,870</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr id="xdx_404_eus-gaap--StockIssuedDuringPeriodValueOther_i_pp0p0" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Common stock issued for warrant
    exercises</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0386">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_982_eus-gaap--StockIssuedDuringPeriodSharesOther_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zRe5duBc6LYi" title="Common stock issued for warrant exercises, shares" style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesOther" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">50,000</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueOther" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">50</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0388">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueOther" contextRef="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">99,950</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0390">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0391">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueOther" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">100,000</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr id="xdx_40C_eus-gaap--StockIssuedDuringPeriodValueShareBasedCompensationGross_zLEV4sJBtqcc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Stock-based compensation expense</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0396">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_987_eus-gaap--StockIssuedDuringPeriodSharesShareBasedCompensationGross_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zxmqP1nX2U9h" title="Stock-based compensation expense, shares" style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">725,166</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">725</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0398">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" contextRef="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,542,498</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0400">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0401">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,543,223</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr id="xdx_40A_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_zFTWSRol6TP4" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Common stock issued for acquisitions</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0406">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_981_eus-gaap--StockIssuedDuringPeriodSharesAcquisitions_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zAqc6B7CdE45" title="Common stock issued for acquisitions, shares" style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesAcquisitions" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">88,446</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">89</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0408">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">480,687</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0410">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0411">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">480,776</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr id="xdx_400_eus-gaap--StockRepurchasedDuringPeriodValue_iN_di_zKzP3cZbuLd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Repurchases of common stock</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0416">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0417">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">(<ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2022-01-012022-12-31_us-gaap_TreasuryStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">14,211,866</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">)</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0419">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0420">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0421">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">(<ix:nonFraction name="us-gaap:StockRepurchasedDuringPeriodValue" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">14,211,866</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">)</span></td></tr>
  <tr id="xdx_406_eus-gaap--OtherComprehensiveIncomeLossNetOfTax_zJfMNJuRbGm2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Other comprehensive income,
    net of tax</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0424">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0425">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0426">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0427">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">293,140</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0429">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">293,140</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr id="xdx_402_eus-gaap--NetIncomeLoss_zAqaPWIQSysd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Net income</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0432">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">-</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0433">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0434">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0435">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0436">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">14,238,249</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">)</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">14,238,249</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">)</span></td></tr>
  <tr id="xdx_435_c20220101__20221231_eus-gaap--StockholdersEquity_iE_pid_zJ1O094Q9zS3" style="vertical-align: bottom; background-color: White">
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Balance as of December 31, 2022</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_983_eus-gaap--SharesOutstanding_iE_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--PreferredStockMember__us-gaap--StatementClassOfStockAxis__us-gaap--ConvertiblePreferredStockMember_z1E0HgJmWxG6" title="Balance, shares" style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0448">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0440">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_98A_eus-gaap--SharesOutstanding_iE_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_z1bz3iReux7f" title="Balance, shares" style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">34,754,265</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">34,754</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31_us-gaap_TreasuryStockMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">14,211,866</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">)</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31_us-gaap_AdditionalPaidInCapitalMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">88,472,934</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">293,140</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">39,931,030</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">114,519,992</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
  <tr id="xdx_43A_c20220101__20221231_eus-gaap--StockholdersEquity_iE_pid_zCJpk0C1Ft7i" style="display: none; vertical-align: bottom; background-color: White">
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">Balance</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_98D_eus-gaap--SharesOutstanding_iE_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--PreferredStockMember__us-gaap--StatementClassOfStockAxis__us-gaap--ConvertiblePreferredStockMember_zGVnpvmcDIrj" title="Balance, shares" style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0460">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><span style="-sec-ix-hidden: xdx2ixbrl0452">-</span></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-right: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td id="xdx_982_eus-gaap--SharesOutstanding_iE_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zONR1ZNp9yDl" title="Balance, shares" style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:SharesOutstanding" contextRef="AsOf2022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">34,754,265</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">34,754</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">(<ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31_us-gaap_TreasuryStockMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">14,211,866</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">)</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31_us-gaap_AdditionalPaidInCapitalMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">88,472,934</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">293,140</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31_us-gaap_RetainedEarningsMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">39,931,030</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td><td><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td>
    <td style="border-bottom: Black 2.5pt double; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">$</span></td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt"><ix:nonFraction name="us-gaap:StockholdersEquity" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">114,519,992</ix:nonFraction></span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 9pt">&#160;</span></td></tr>
</table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">See
accompanying notes to consolidated financial statements.</span></p>

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


<!-- Field: Page; Sequence: 37; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->37<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>CO-DIAGNOSTICS,
INC. AND SUBSIDIARIES</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="f_005"></span>CONSOLIDATED
STATEMENTS OF CASH FLOWS</b></span></p>

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

<table cellpadding="0" cellspacing="0" id="xdx_302_112_zj7ZpAMQeuIl" summary="xdx: Statement - Consolidated Statements of Cash Flows" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20220101__20221231_zClFxu65JhT8" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20210101__20211231_zRKUIMjZQLTl" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Years Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--NetCashProvidedByUsedInOperatingActivitiesAbstract_iB_zdamFPpEk5cb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-left: 0pt">Cash flows from operating activities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--NetIncomeLoss_i01_maCz4ZF_zFCt8Qqg5F5l" style="vertical-align: bottom; background-color: White">
    <td style="width: 60%; text-align: left; padding-left: 0pt">Net income</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">14,238,249</ix:nonFraction></td><td style="width: 1%; text-align: left">)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">36,658,564</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_i01B_z0CpA8zfimn1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Adjustments to reconcile net income to cash used in operating activities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--DepreciationDepletionAndAmortization_i02_maCz4ZF_zuLnOWUhwBIi" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Depreciation and amortization</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,282,718</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DepreciationDepletionAndAmortization" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">335,363</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--GoodwillImpairmentLoss_i02_maCz4ZF_zSDtLGb8vHLi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Goodwill impairment charges</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:GoodwillImpairmentLoss" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">15,388,546</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0477">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--ShareBasedCompensation_i02_maCzKBK_maCz4ZF_zD0Wf7eGiI7f" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Stock-based compensation expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,543,223</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensation" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,509,404</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_ecustom--GainOnRemeasurementOfAcquisitionContingencies_i02N_di_msCz4ZF_zi0Dy4HVUaz3" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Change in fair value of acquisition contingencies</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="CODX:GainOnRemeasurementOfAcquisitionContingencies" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,899,644</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0483">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_ecustom--NoncashLeaseExpense_i02_maCz4ZF_zhtreEYyQNdf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Non-cash lease expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="CODX:NoncashLeaseExpense" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">30,430</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0486">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--GainLossOnSaleOfInvestments_i02N_di_msCz4ZF_zyvdKq6k8kIk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Loss from equity method investment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:GainLossOnSaleOfInvestments" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">332,969</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:GainLossOnSaleOfInvestments" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">430,433</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--GainLossOnDispositionOfAssets1_i02N_di_msCz4ZF_zmNfsbT13Xb6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Loss on disposition of assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets1" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">138,117</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets1" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">44,355</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--DeferredIncomeTaxExpenseBenefit_i02_maCz4ZF_zriwg2rAeROb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Deferred income taxes</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">4,810,457</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">930,081</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--ProvisionForDoubtfulAccounts_i02_maCz4ZF_zJa0Hv0g2GE7" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Bad debt expense</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,428,930</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProvisionForDoubtfulAccounts" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">69,672</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--IncreaseDecreaseInOperatingCapitalAbstract_i02B_zRl3rGYQWtI1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Changes in assets and liabilities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--IncreaseDecreaseInAccountsReceivable_i03N_di_msCz4ZF_z0lSsTD8dMe7" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Accounts receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">14,956,529</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">8,740,851</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--IncreaseDecreaseInPrepaidExpense_i03N_di_msCz4ZF_zbEqJqplWUb6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Prepaid expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInPrepaidExpense" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">224,094</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInPrepaidExpense" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,049,095</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--IncreaseDecreaseInInventories_i03N_di_msCz4ZF_zsUq3ApFC60i" style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 20pt; padding-left: 0pt">Inventory</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,525,210</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">5,705,361</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--IncreaseDecreaseInContractWithCustomerLiability_i03_maCz4ZF_z484x2oyB7Ql" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Deferred revenue</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">150,000</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">155,307</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_408_eus-gaap--IncreaseDecreaseInAccruedIncomeTaxesPayable_i03_maCz4ZF_z9gVltHq4DD3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Income taxes payable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">2,201,250</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,643,381</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_i03_maCz4ZF_z9Z7N1DTlG0e" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt">Accounts payable, accrued expenses and other liabilities</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">2,483,821</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">299,937</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_407_eus-gaap--NetCashProvidedByUsedInOperatingActivities_i01T_mtCz4ZF_maCzQMG_z3j9FUgLMTtj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 40pt; padding-left: 0pt">Net cash provided by operating activities</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,568,737</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">41,081,424</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--NetCashProvidedByUsedInInvestingActivitiesAbstract_iB_zXp83dWCDatl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-left: 0pt">Cash flows from investing activities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_eus-gaap--PaymentsToAcquirePropertyPlantAndEquipment_i01N_di_msCz7r2_msNCPBUz0Nm_zoWcf204Wkqk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Purchases of property and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,427,512</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">669,463</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_404_eus-gaap--ProceedsFromSaleAndMaturityOfMarketableSecurities_i01_maCz7r2_maNCPBUz0Nm_zEJZLzFaAUHb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Proceeds from maturities of marketable investment securities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">11,255,266</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,080,180</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--PaymentsToAcquireMarketableSecurities_i01N_di_msCz7r2_msNCPBUz0Nm_z7zPidvbK6l3" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Purchases of marketable securities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:PaymentsToAcquireMarketableSecurities" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">67,995,926</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0534">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--ProceedsFromDivestitureOfInterestInJointVenture_i01_maCz7r2_maNCPBUz0Nm_z2JS5M7u1j86" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Investment in joint venture</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0536">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromDivestitureOfInterestInJointVenture" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">491,739</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--PaymentsToAcquireBusinessesNetOfCashAcquired_i01N_di_msCzyBc_msNCPBUz0Nm_zH6NBreUz8C7" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Business combinations, net of cash acquired</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0539">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">1,196,243</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--NetCashProvidedByUsedInInvestingActivities_i01T_mtNCPBUz0Nm_maCzQMG_zO6ItlywLk17" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 30pt; padding-left: 0pt">Net cash (used in) provided by investing activities</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">58,168,172</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,098,699</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--NetCashProvidedByUsedInFinancingActivitiesAbstract_iB_zY1lbVpIVQpe" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-left: 0pt">Cash flows from financing activities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--ProceedsFromIssuanceOfCommonStock_i01_maCzY9w_maNCPBUzhOQ_zHg4qpD7Y91a" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Proceeds from exercise of options and warrants</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfCommonStock" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">177,870</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:ProceedsFromIssuanceOfCommonStock" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">450,398</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--PaymentsForRepurchaseOfCommonStock_i01N_di_msCzML0_msNCPBUzhOQ_zVTegbLzLsGk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Repurchases of common stock</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:PaymentsForRepurchaseOfCommonStock" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">14,211,866</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0552">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--NetCashProvidedByUsedInFinancingActivities_i01T_maCzQMG_mtNCPBUzhOQ_z1QuogutJ6s4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 30pt; padding-left: 0pt">Net cash (used in) provided by financing activities</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">14,033,996</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">450,398</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_iT_mtCzQMG_zd0Cw5gMN6U6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Net increase in cash and cash equivalents</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">65,633,431</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">45,630,521</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_iS_zvFvVCFBpdPb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Cash and cash equivalents at beginning of period</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">88,607,234</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">42,976,713</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_iE_zvsE1VsDuic" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Cash and cash equivalents at end of period</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">22,973,803</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">88,607,234</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--SupplementalCashFlowInformationAbstract_iB_zWFt2q9cgPl9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-left: 0pt">Supplemental disclosure of cash flow information</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--InterestPaidNet_i01_z9MRuuQtEAn5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Interest paid</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0569">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0570">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--IncomeTaxesPaidNet_i01_zDEUCA3t7Rg1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Income taxes paid</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxesPaidNet" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">4,498,742</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxesPaidNet" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,403,769</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--NoncashInvestingAndFinancingItemsAbstract_iB_zJGgNrRiV9S1" style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-left: 0pt">Supplemental disclosure of non-cash investing and financing transactions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_ecustom--NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment_i01_zR9UmHtzOUKa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Inventory moved to property, plant and equipment</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="CODX:NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">218,906</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="CODX:NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">285,659</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_i01_zALKfDmvYSQa" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 0pt; padding-left: 10pt">Right-of-use assets obtained in exchange for new operating lease liabilities</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">681,327</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0582">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_ecustom--BusinessAcquisitionMeasurementPeriodAdjustments_i01_zwsCPHhiS9Ld" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Business acquisition measurement period adjustments</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="CODX:BusinessAcquisitionMeasurementPeriodAdjustments" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,593</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0585">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_ecustom--StockIssuedDuringPeriodValueAcquisitionsAdjustments_i01_zPoSC2ay2Wad" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 0pt; padding-left: 10pt">Fair value of common stock issued as consideration for business acquisitions</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0"><ix:nonFraction name="CODX:StockIssuedDuringPeriodValueAcquisitionsAdjustments" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">480,776</ix:nonFraction></p></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="CODX:StockIssuedDuringPeriodValueAcquisitionsAdjustments" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">25,160,223</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_ecustom--FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions_i01_zPIFSgrdONw4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 0pt; padding-left: 10pt">Fair value of contingent common stock issued as consideration for business acquisitions</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0"><ix:nonFraction name="CODX:FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">199,359</ix:nonFraction></p></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="CODX:FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">10,432,641</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">See
accompanying notes to consolidated financial statements.</span></p>

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


<!-- Field: Page; Sequence: 38; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->38<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>CO-DIAGNOSTICS,
INC. AND SUBSIDIARIES</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="f_006"></span>NOTES
TO CONSOLIDATED FINANCIAL STATEMENTS</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>YEARS
ENDED DECEMBER 31, 2022 AND 2021</b></span></p>

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

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock"><p id="xdx_80F_eus-gaap--BusinessDescriptionAndBasisOfPresentationTextBlock_zjnQPQuzYgnf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
1 &#8211; <span id="xdx_826_zJKQTUZMuaY7">Overview and Basis of Presentation</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Description
of Business</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.35pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Co-Diagnostics,
Inc., a Utah corporation (the &#8220;Company&#8221; or &#8220;CODX&#8221;), is developing robust and innovative molecular tools for detection
of infectious diseases, liquid biopsy for cancer screening, and agricultural applications. The Company develops, manufactures, and sells
reagents used for diagnostic tests that function via the detection and/or analysis of nucleic acid molecules (DNA or RNA), including
robust and innovative molecular tools for detection of infectious diseases, liquid biopsy for cancer screening, and agricultural applications.
In connection with the sale of our tests we may sell diagnostic equipment from other manufacturers as self-contained lab systems.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Use
of Estimates</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
preparation of financial statements in conformity with generally accepted accounting principles requires management to make estimates
and assumptions that affect the amounts reported in the financial statements and the accompanying notes. Such estimates include receivables
and other long-lived assets, legal and regulatory contingencies, income taxes, share based arrangements, and others. These estimates
and assumptions are based on management&#8217;s best estimates and judgments. Actual amounts and results could differ from those estimates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Basis
of Presentation</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
accompanying audited consolidated financial statements of Co-Diagnostics, Inc. and its wholly owned subsidiaries have been prepared to
reflect the financial position, results of operations and cash flows of the Company and have been prepared in accordance with accounting
principles generally accepted in the United States of America (&#8220;GAAP&#8221;). All intercompany balances and transactions have been
eliminated.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:SignificantAccountingPoliciesTextBlock"><p id="xdx_80F_eus-gaap--SignificantAccountingPoliciesTextBlock_zbAqft1lx4z4" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
2 &#8211; <span id="xdx_823_zalKVf3mq66a">Summary of Significant Accounting Policies</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:CashAndCashEquivalentsPolicyTextBlock"><p id="xdx_843_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_zlP51pzp1Fm8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_z7t6FF0tCHfa">Cash
and Cash Equivalents</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cash
and cash equivalents consist of cash on hand, money market funds and highly liquid investments with an original maturity date of 90 days
or less from the date of purchase. The fair value of cash equivalents approximated their carrying value as of December 31, 2022 and December
31, 2021. <span style="background-color: white">The Company has its cash and cash equivalents with a large creditworthy financial institution
and the balance exceeded federally insured limits. The Company has not experienced any losses in such accounts, and management believes
the Company is not exposed to any significant credit risk on cash and cash equivalents.</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 39; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->39<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:MarketableSecuritiesPolicy"><p id="xdx_84A_eus-gaap--MarketableSecuritiesPolicy_zukDsTCDUWU" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_867_zAnAwzlnRVI1">Marketable
Investment Securities</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s marketable investment securities are comprised of investments in certificates of deposit and U.S. Treasury bills and
notes. The Company designates investments in debt securities as available-for-sale. Available-for-sale debt securities with original
maturities of three months or less from the date of purchase are classified within cash and cash equivalents. Available-for-sale debt
securities with original maturities longer than three months are available to fund current operations and are classified as marketable
investment securities, within current assets on the consolidated balance sheets. The Company may sell these securities at any time for
use in its current operations or for other purposes, even prior to maturity. Available-for-sale debt securities are reported at fair
value with the related unrealized gains and losses included in accumulated other comprehensive income (loss), a component of stockholders&#8217;
equity, net of tax. Realized gains and losses on the sale of marketable securities are determined using the average cost method on a
first-in, first-out basis and recorded in total other income (expense), net in the condensed consolidated statements of operations and
comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
available-for-sale debt securities are subject to a periodic impairment review. For investments in an unrealized loss position, the Company
writes down the amortized cost basis of the investment if it is more likely than not that the Company will be required or will intend
to sell the investment before recovery of its amortized cost basis. For investments not likely to be sold before recovery of the amortized
cost basis, the Company determines whether a credit loss exists by considering information about the collectability of the instrument,
current market conditions, and reasonable and supportable forecasts of economic conditions. The Company recognizes an allowance for credit
losses up to the amount of the unrealized loss when appropriate. Allowances for credit losses and write-downs are recognized in total
other income (expense), net, and unrealized losses not related to credit losses are recognized in accumulated other comprehensive income
(loss). There are no allowances for credit losses recorded for the periods presented.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:TradeAndOtherAccountsReceivablePolicy"><p id="xdx_845_eus-gaap--TradeAndOtherAccountsReceivablePolicy_zLXd2b4tq6wk" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_863_zLioYMsEtqb2">Accounts
Receivable</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Trade
accounts receivable are recorded at the invoiced amount (net of allowance) and do not bear interest. The Company maintains an allowance
for doubtful accounts for amounts the Company does not expect to collect. In establishing the required allowance, management considers
historical losses, current market condition, customers&#8217; financial condition, the age of receivables, and current payment patterns.
Account balances are written off against the allowance once the receivable is deemed uncollectible. Recoveries of trade receivables previously
written off are recorded when collected. At December 31, 2022 total accounts receivable was $<span id="xdx_90F_eus-gaap--AccountsReceivableGrossCurrent_iI_c20221231_zDlFiuwp9ZOi" title="Accounts receivable"><ix:nonFraction name="us-gaap:AccountsReceivableGrossCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,552,249</ix:nonFraction></span> with an allowance for uncollectable
accounts of $<span id="xdx_906_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iI_c20221231_zy6Vob70v6e3" title="Doubtful accounts"><ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,098,526</ix:nonFraction></span> resulting in a net amount of $<span id="xdx_902_eus-gaap--AccountsReceivableNetCurrent_iI_c20221231_zMblppMPrhvh" title="Accounts receivable, net"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,453,723</ix:nonFraction></span>. At December 31, 2021 total accounts receivable was $<span id="xdx_90F_eus-gaap--AccountsReceivableGrossCurrent_iI_c20211231_znnRFuR6YZY5" title="Accounts receivable, before allowance for credit loss, current"><ix:nonFraction name="us-gaap:AccountsReceivableGrossCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">21,508,779</ix:nonFraction></span> with an
allowance for uncollectable accounts of $<span id="xdx_90D_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iI_c20211231_zSFCPnJq6X0e" title="Uncollectable accounts"><ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">669,597</ix:nonFraction></span> resulting in a net amount of $<span id="xdx_902_eus-gaap--AccountsReceivableNetCurrent_iI_c20211231_zvbwNuncuNT5" title="Accounts receivable, after allowance for credit loss, current"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">20,839,182</ix:nonFraction></span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:EquityMethodInvestmentsPolicy"><p id="xdx_848_eus-gaap--EquityMethodInvestmentsPolicy_z779mF7Byma9" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_869_zjHgYxmsz3w1">Equity-Method
Investments</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
equity method investments are initially recorded at cost and are included in other long-term assets in the accompanying consolidated
balance sheet. We adjust the carrying value of our investment based on our share of the earnings or losses in the periods which they
are reported by the investee until the carrying amount is zero. The earnings or losses are included in other income (expense) in the
accompanying consolidated statements of operations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:InventoryPolicyTextBlock"><p id="xdx_846_eus-gaap--InventoryPolicyTextBlock_z3Sx5h6BggQ2" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_zcrLW38mY8hd">Inventory</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inventory
is stated at the lower of cost or net-realizable value. Inventory cost is determined on a first-in first-out basis that approximates
average cost in accordance with ASC 330-10-30-12. At December 31, 2022, the Company had $<span id="xdx_90F_eus-gaap--InventoryNet_iI_c20221231_zWb5YMqnf5Kk" title="Inventory"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,310,473</ix:nonFraction></span> in inventory, of which $<span id="xdx_90C_eus-gaap--InventoryFinishedGoods_iI_c20221231_zLhdzP0FuwUg" title="Inventory finished goods"><ix:nonFraction name="us-gaap:InventoryFinishedGoods" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,327,264</ix:nonFraction></span>
was finished goods and $<span id="xdx_901_eus-gaap--InventoryRawMaterials_iI_c20221231_ztNkX8lqiEel" title="Inventory raw materials"><ix:nonFraction name="us-gaap:InventoryRawMaterials" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,983,209</ix:nonFraction></span> was raw materials. At December 31, 2021, the Company had $<span id="xdx_90D_eus-gaap--InventoryNet_iI_c20211231_z9PYMkZ2kXx9" title="Inventory, net"><ix:nonFraction name="us-gaap:InventoryNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,004,169</ix:nonFraction></span> in inventory, of which $<span id="xdx_90A_eus-gaap--InventoryFinishedGoods_iI_c20211231_z5oFktUyrPL3" title="Inventory, finished goods, gross"><ix:nonFraction name="us-gaap:InventoryFinishedGoods" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">983,088</ix:nonFraction></span>
was finished goods and $<span id="xdx_90E_eus-gaap--InventoryRawMaterials_iI_c20211231_zZxgiGdF1P33" title="Inventory, raw materials, gross"><ix:nonFraction name="us-gaap:InventoryRawMaterials" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,021,081</ix:nonFraction></span> was raw materials. The Company establishes reserves to reduce low-moving, obsolete, or unusable inventories
to their estimated useful or scrap values.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 40; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->40<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock"><p id="xdx_845_eus-gaap--GoodwillAndIntangibleAssetsPolicyTextBlock_zGZ0PwmD2oC6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86C_z9WHLvmIr5Bi">Goodwill
and Intangible Assets</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill
represents the excess of the purchase price and related costs over the value assigned to net tangible and identifiable intangible assets
acquired in business combinations. Goodwill and indefinite-lived intangible assets are not amortized, but rather tested for impairment
at least annually on December 31, or more often if and when circumstances indicate that the carrying value may not be recoverable. Finite-lived
intangible assets are amortized over their useful lives.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2022, the Company recognized impairment charges related to goodwill of $<span id="xdx_908_eus-gaap--AssetImpairmentCharges_c20220101__20221231_zQytDLdiVcnd" title="Impairment charges"><ix:nonFraction name="us-gaap:AssetImpairmentCharges" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">15,388,546</ix:nonFraction></span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock"><p id="xdx_849_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zCOmrbs4riQa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86F_zQ0J8hnPMV7l">Long-lived
Assets</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Long-lived
assets, such as property and equipment, are stated at cost less accumulated depreciation and amortization. Depreciation is provided using
the straight-line method over the estimated useful lives of the property, generally from three to five years. Repairs and maintenance
costs are expensed as incurred except when such repairs significantly add to the useful life or productive capacity of the asset, in
which case the repairs are capitalized.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company reviews its long-lived assets, including property and equipment, finite-lived intangible assets, and ROU assets, for impairment
whenever an event or change in facts and circumstances indicates that their carrying amounts may not be recoverable. Recoverability of
these assets is measured by comparing the carrying amount to the estimated undiscounted future cash flows expected to be generated. If
the carrying amount exceeds the undiscounted cash flows, the assets are determined to be impaired and an impairment charge is recognized
as the amount by which the carrying amount exceeds fair value.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:BusinessCombinationsPolicy"><p id="xdx_841_eus-gaap--BusinessCombinationsPolicy_z2bYQtSSsvcc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86C_zZYdX3HXTcCf">Business
Combinations</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
estimate the fair value of assets acquired and liabilities assumed in a business combination. Goodwill as of the acquisition date is
measured as the excess of consideration transferred over the net of the acquisition date fair values of the assets acquired and the liabilities
assumed. Such valuations require management to make significant estimates and assumptions, especially with respect to intangible assets.
Management&#8217;s estimates of fair value are based upon assumptions believed to be reasonable, but which are inherently uncertain and
unpredictable, and as a result, actual results may differ from estimates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:RevenueRecognitionPolicyTextBlock"><p id="xdx_84E_eus-gaap--RevenueRecognitionPolicyTextBlock_zspZfJUhpuTi" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86B_zM0OA0duB2Y9">Revenue
Recognition</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company generates revenue from product sales and license sales. The Company recognizes revenue when all of the following criteria are
satisfied: (i) identification of the promised goods or services in the contract; (ii) determination of whether the promised goods or
services are performance obligations, including whether they are distinct in the context of the contract; (iii) measurement of the transaction
price, including the constraint on variable consideration; (iv) allocation of the transaction price to the performance obligations; and
(v) recognition of revenue when, or as the Company satisfies each performance obligation. Based on the criteria above, the Company typically
recognizes revenue upon delivery.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company constrains revenue by giving consideration to factors that could otherwise lead to a probable reversal of revenue. The Company
records any payments received from customers prior to the Company fulfilling its performance obligation(s) as deferred revenue.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock"><p id="xdx_84C_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zhtvVfpavpZj" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_zSBwbIjua8Vd">Deferred
Revenue</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Deferred
revenue primarily consists of payments received from customers prior to the Company fulfilling its performance obligation of providing
the product. When this occurs, the Company records a contract liability as deferred revenue. Deferred revenue is recognized as revenue
as the related performance obligations are satisfied.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 41; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->41<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

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

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ResearchAndDevelopmentExpensePolicy"><p id="xdx_84B_eus-gaap--ResearchAndDevelopmentExpensePolicy_zLp826ztHoOf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_zmNKFsgX7tG">Research
and Development</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Research
and development costs are expensed when incurred. The Company expensed $<span id="xdx_907_eus-gaap--ResearchAndDevelopmentExpense_c20220101__20221231_z5KwSywb3uU6" title="Research and development costs"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">17,438,098</ix:nonFraction></span> and $<span id="xdx_901_eus-gaap--ResearchAndDevelopmentExpense_c20210101__20211231_zLzPeoUeLZ03" title="Research and development costs"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">14,961,916</ix:nonFraction></span> of research and development costs
for the years ended December 31, 2022 and 2021, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy"><p id="xdx_846_eus-gaap--ShareBasedCompensationOptionAndIncentivePlansPolicy_z7m0AvYS3jQb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86E_z8TVatW2ovHh">Stock-based
Compensation</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has granted stock-based awards, including restricted stock, stock options, stock warrants and restricted stock units (&#8220;RSUs&#8221;),
to its employees, certain consultants and members of its board of directors. The Company records stock-based compensation based on the
grant date fair value of the awards and recognizes the fair value of those awards as expense using the straight-line method over the
requisite service period of the award. The Company estimates the grant date fair value of stock options using the Black-Scholes option-pricing
model. <span style="background-color: white">When an award is forfeited prior to the vesting date, the Company recognizes an adjustment
for the previously recognized expense in the period of the forfeiture.</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:IncomeTaxPolicyTextBlock"><p id="xdx_84A_eus-gaap--IncomeTaxPolicyTextBlock_zGX4cFrWPc92" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_867_zHBjpEbijS5f">Income
Taxes</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The
Company accounts for income taxes in accordance with the liability method of accounting for income taxes. Under this method, d</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">eferred
income tax assets and deferred income tax liabilities represent the tax effect of temporary differences between financial reporting and
tax reporting measured at enacted tax rates in effect for the year in which the differences are expected to reverse. The Company recognizes
only the impact of tax positions that, based on their technical merits, are more likely than not to be sustained upon an audit by the
taxing authority.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Valuation
allowances are provided when it is more-likely-than-not that some or all of the deferred income tax assets may not be realized. In assessing
the need for a valuation allowance, the Company has considered its historical levels of income, expectations of future taxable income
and ongoing tax planning strategies.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Developing
the provision for income taxes, including the effective tax rate and analysis of potential tax exposure items, if any, requires
significant judgment and expertise in federal and state income tax laws, regulations and strategies, including the determination of
deferred income tax assets and liabilities and any estimated valuation allowances deemed necessary to value deferred income tax
assets. Judgments and tax strategies are subject to audit by various taxing authorities. The Company has uncertain income tax
positions in the consolidated financial statements, and adverse determinations by these taxing authorities could have a material
adverse effect on the consolidated financial positions, result of operations, or cash flows.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:EarningsPerSharePolicyTextBlock"><p id="xdx_848_eus-gaap--EarningsPerSharePolicyTextBlock_zgWJMFuQGg6e" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86F_zrRS800yxWXc">Net
Income per Share</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Basic
net income or loss per common share is computed by dividing net income or loss applicable to common shareholders by the weighted average
number of shares outstanding during each period.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Diluted
net income or loss per share is computed by dividing net income or loss attributable to common stockholders by the weighted-average number
of shares of common stock outstanding during the period increased by common shares that could be issued upon conversion or exercise of
other outstanding securities to the extent those additional common shares would be dilutive. The dilutive effect of potentially dilutive
securities is reflected in diluted net income or loss per share by application of the treasury stock method. During periods when the
Company is in a net loss position, basic net loss per share is the same as diluted net loss per share as the effects of potentially dilutive
securities are anti-dilutive.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ComprehensiveIncomePolicyPolicyTextBlock"><p id="xdx_84B_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zF4isgvWnRa5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_zGYzV1hnQeW8">Comprehensive
Income</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">Comprehensive
income is comprised of unrealized gains and losses on marketable securities, net of income taxes.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ConcentrationRiskCreditRisk"><p id="xdx_848_eus-gaap--ConcentrationRiskCreditRisk_zBLAQRjUUgI9" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86F_zvToWzpxpSEc">Concentrations
Risk and Significant Customers</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The
Company had certain customers which are each responsible for generating <span id="xdx_904_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--CustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zkUQi3pu6Tv3" title="Concentration risk percentage"><span id="xdx_909_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--CustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zX6u0Rm6gmJh" title="Concentration risk percentage"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="From2022-01-012022-12-31_custom_CustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="From2021-01-012021-12-31_custom_CustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">10</ix:nonFraction></ix:nonFraction></span></span>% or more of the total revenue for the years ended December
31, 2022 and 2021. One customer accounted for approximately <span id="xdx_90F_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--OneCustomerMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zUjMqCAI0uY2" title="Concentration risk percentage"><span id="xdx_907_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--OneCustomerMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zQ7C3WjRK7t1" title="Concentration risk percentage"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="From2022-01-012022-12-31_custom_OneCustomerMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="From2021-01-012021-12-31_custom_OneCustomerMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">37</ix:nonFraction></ix:nonFraction></span></span>% and two customers together accounted for approximately <span id="xdx_90F_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--TwoCustomersTogetherMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zSiBVLz4t8q5" title="Total revenue, percentage"><span id="xdx_906_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--TwoCustomersTogetherMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zq9Skfg7W0Eb" title="Total revenue, percentage"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="From2022-01-012022-12-31_custom_TwoCustomersTogetherMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="From2021-01-012021-12-31_custom_TwoCustomersTogetherMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">48</ix:nonFraction></ix:nonFraction></span></span>% of total revenue
for the years ended December 31, 2022 and 2021, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 42; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->42<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">Three
customers accounted for more than <span id="xdx_902_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--FourCustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zzNino7otFNi" title="Concentration risk percentage"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="From2022-01-012022-12-31_custom_FourCustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">10</ix:nonFraction></span>% of accounts receivable, and two customers each accounted for more than <span id="xdx_907_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--FourCustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zNDIuMuno5c2" title="Concentration risk percentage"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="From2021-01-012021-12-31_custom_FourCustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">10</ix:nonFraction></span>% of accounts receivable,
at December 31, 2022 and 2021, respectively. These customers together accounted for approximately <span id="xdx_904_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--CustomersTogetherMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zn9o5cgE2otl" title="Concentration risk percentage"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="From2022-01-012022-12-31_custom_CustomersTogetherMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">61</ix:nonFraction></span>% and <span id="xdx_908_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--CustomersTogetherMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zLDBKw7sEXA4" title="Concentration risk percentage"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="From2021-01-012021-12-31_custom_CustomersTogetherMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">66</ix:nonFraction></span>% of accounts receivable
at December 31, 2022 and 2021, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock"><p id="xdx_847_eus-gaap--NewAccountingPronouncementsPolicyPolicyTextBlock_z5TCl01oFX" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_866_zsYzaD3vX8b4">Recently
Issued Accounting Standards</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">From
time to time, new accounting pronouncements are issued by the Financial Accounting Standards Board (&#8220;FASB&#8221;) that are adopted
by the Company as of the specified effective date. If not discussed, management believes that the impact of recently issued standards,
which are not yet effective, will not have a material impact on the Company&#8217;s financial statements upon adoption.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
June 2016, the FASB issued ASU No. 2016-13, Financial Instruments-Credit Losses (Topic 326) (&#8220;ASU 2016-13&#8221;), which requires
the measurement and recognition of expected credit losses for certain financial instruments, which includes the Company&#8217;s accounts
receivable. ASU 2016-13 replaces the existing incurred loss impairment model with an expected loss methodology, which will result in
more timely recognition of credit losses. The Company adopted ASU 2016-13 on January 1, 2022. The adoption did not have an impact on
the Company&#8217;s financial statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
February 2016, the FASB issued ASU No. 2016-02, Leases (Topic 842) (&#8220;ASU 2016-02&#8221;), which requires a lessee to recognize
most leases on the balance sheet as lease liabilities with corresponding right-of-use assets. The objective of ASU 2016-02 is to increase
transparency and comparability among organizations by recognizing lease assets and lease liabilities on the balance sheet and disclosing
key information about leasing arrangements. The recognized lease liabilities and lease assets represent the obligation to make payments
and the right to use or control the use of a specified asset for the lease term, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
January 1, 2022, the Company adopted Topic 842 using the modified retrospective approach with the effective date as the date of
initial application. Consequently, results for the year ended December 31, 2022 are presented under Topic
842. No prior period amounts were adjusted and continue to be reported in accordance with previous lease guidance, ASC Topic 840,
Leases. The Company elected the practical expedients available under the provisions of the new standard, including not reassessing
whether expired or existing contracts are or contain leases; not reassessing the classification of expired or existing leases; and
not reassessing the initial direct cost for any existing leases. Upon adoption, the Company recognized an operating lease liability
of $<span id="xdx_908_eus-gaap--OperatingLeaseLiability_iI_c20220102__us-gaap--AdjustmentsForNewAccountingPronouncementsAxis__us-gaap--AccountingStandardsUpdate201602Member_zpFliI9aVtQ7" title="Operating lease liability"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" contextRef="AsOf2022-01-02_us-gaap_AccountingStandardsUpdate201602Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">626,699</ix:nonFraction></span>
and a corresponding operating right-of-use asset of $<span id="xdx_909_eus-gaap--OperatingLeaseRightOfUseAsset_iI_c20220102__us-gaap--AdjustmentsForNewAccountingPronouncementsAxis__us-gaap--AccountingStandardsUpdate201602Member_zYgyvvzDLc4h" title="Operating right use of asset"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="AsOf2022-01-02_us-gaap_AccountingStandardsUpdate201602Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">681,327</ix:nonFraction></span>.</span></p>

</ix:nonNumeric><p id="xdx_85E_zaaL0LNb2LQ3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 43; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->43<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:CashCashEquivalentsAndMarketableSecuritiesTextBlock"><p id="xdx_807_eus-gaap--CashCashEquivalentsAndMarketableSecuritiesTextBlock_zxbOl7ZthPph" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span>Note
3 - <span id="xdx_82D_zS2LVnVl49zi">Cash, Cash Equivalents, and Financial Instruments</span></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock"><p id="xdx_894_eus-gaap--ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock_zPHr4pCewLL1" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The
following table shows the Company&#8217;s cash, cash equivalents, and marketable investment securities by significant investment category
as of December 31, 2022:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B3_zwWjoJQzKBB1" style="display: none">Schedule
of Cash, Cash Equivalents, and Marketable Investment Securities</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="22" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Adjusted Cost</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Allowance for Credit Losses</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total Unrealized Gains / (Losses)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Fair Value</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Cash and Cash Equivalents</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Marketable Securities</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 40%; padding-left: 10pt">Cash</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_983_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zkc38h6lxtgh" title="Adjusted Cost" style="width: 6%; text-align: right"><ix:nonFraction name="us-gaap:TradingSecuritiesDebtAmortizedCost" contextRef="AsOf2022-12-31_us-gaap_CashMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,834,444</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zgY1Ay4hp6m2" title="Allowance for Credit Losses" style="width: 6%; text-align: right">&#160;&#160;&#160;&#160;&#160;&#160;<span style="-sec-ix-hidden: xdx2ixbrl0691">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_z960b4wyb304" title="Total Unrealized Gains / (Losses)" style="width: 6%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0693">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zCQg7iql5BH2" title="Fair Value" style="width: 6%; text-align: right"><ix:nonFraction name="us-gaap:TradingSecurities" contextRef="AsOf2022-12-31_us-gaap_CashMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,834,444</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98A_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zkkCTO5jGJHe" title="Cash and Cash Equivalents" style="width: 6%; text-align: right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="AsOf2022-12-31_us-gaap_CashMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">12,834,444</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_980_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zgSRbdPQGMS4" title="Marketable Securities" style="width: 6%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0699">-</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Level 1:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Money market funds</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zN8ZWCTwYsR9" title="Adjusted Cost" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:TradingSecuritiesDebtAmortizedCost" contextRef="AsOf2022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">146,359</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z2uEjZApc1ei" title="Allowance for Credit Losses" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0703">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z6l5rq1DMLl1" title="Total Unrealized Gains / (Losses)" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0705">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zPPwpEbuQB9b" title="Fair Value" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:TradingSecurities" contextRef="AsOf2022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">146,359</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zfMKpxphIZvg" title="Cash and Cash Equivalents" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="AsOf2022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">146,359</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zGlPYXRtRy2g" title="Marketable Securities" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0711">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Subtotal</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zLNjaG6IIuqf" title="Adjusted Cost" style="text-align: right"><ix:nonFraction name="us-gaap:TradingSecuritiesDebtAmortizedCost" contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel1Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">146,359</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z1z8pbG3jQb9" title="Allowance for Credit Losses" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0715">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zf8D2XjauWdg" title="Total Unrealized Gains / (Losses)" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0717">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zObA7U7vYnj7" title="Fair Value" style="text-align: right"><ix:nonFraction name="us-gaap:TradingSecurities" contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel1Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">146,359</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zOieXp2sZSd9" title="Cash and Cash Equivalents" style="text-align: right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel1Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">146,359</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z0bhGlztCasj" title="Marketable Securities" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0723">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Level 2:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">U.S. treasury securities</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z5nMmBtzAvXk" title="Adjusted Cost" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:TradingSecuritiesDebtAmortizedCost" contextRef="AsOf2022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">67,892,825</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zPw9cDVl9wd2" title="Allowance for Credit Losses" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0727">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zRpCJUWdWd44" title="Total Unrealized Gains / (Losses)" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:MarketableSecuritiesUnrealizedGainLoss" contextRef="From2022-01-012022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">389,241</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z51ErO3mpkob" title="Fair Value" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:TradingSecurities" contextRef="AsOf2022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">68,282,066</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zfjODKPyQVqk" title="Cash and Cash Equivalents" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="AsOf2022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">9,993,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zcNeDpsmclh9" title="Marketable Securities" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:MarketableSecurities" contextRef="AsOf2022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">58,289,066</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Subtotal</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zJhp1AxNUV75" title="Adjusted Cost" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:TradingSecuritiesDebtAmortizedCost" contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">67,892,825</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zA5tutCNr0f6" title="Allowance for Credit Losses" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0739">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zTYUN6xrBmx5" title="Total Unrealized Gains / (Losses)" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:MarketableSecuritiesUnrealizedGainLoss" contextRef="From2022-01-012022-12-31_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">389,241</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z8QGNiFtKry9" title="Fair Value" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:TradingSecurities" contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">68,282,066</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zS67B0v91gdc" title="Cash and Cash Equivalents" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">9,993,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zhBjznmJ0Qk1" title="Marketable Securities" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:MarketableSecurities" contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">58,289,066</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt; padding-left: 10pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98F_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231_zdDQuO0jFhJ2" title="Adjusted Cost" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:TradingSecuritiesDebtAmortizedCost" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">80,873,628</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231_zyQR38uUUdp8" title="Allowance for Credit Losses" style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0751">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98E_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231_zGj6bL8pSmQ6" title="Total Unrealized Gains / (Losses)" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:MarketableSecuritiesUnrealizedGainLoss" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">389,241</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--TradingSecurities_iI_c20221231_zJOqkFxoHU8h" title="Fair Value" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:TradingSecurities" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">81,262,869</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231_ziAmHZwZNT3h" title="Cash and Cash Equivalents" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">22,973,803</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_eus-gaap--MarketableSecurities_iI_c20221231_zSyktWhms3Zc" title="Marketable Securities" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:MarketableSecurities" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">58,289,066</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AD_z3B7ivT1bCm1" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">Marketable
investment securities held as of December 31, 2022 mature over the next 12 months.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:BusinessCombinationDisclosureTextBlock"><p id="xdx_80C_eus-gaap--BusinessCombinationDisclosureTextBlock_zvSlnTdkIrkb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
4 &#8211; <span id="xdx_82D_z2tyaouw8BIk">Business Combinations</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
December 31, 2021, the Company completed its acquisitions of Advanced Conceptions, Inc. (&#8220;ACI&#8221;) and Idaho Molecular, Inc. (&#8220;IdMo&#8221;), which were related
entities developing, with the Company, an at-home/point-of-care medical diagnostic device. Upon the completion of the acquisition,
all outstanding ACI and IdMo common stock was initially exchanged for approximately <span id="xdx_901_ecustom--StockIssuedDuringPeriodSharesExchanged_pn5n6_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zQBiShfbBQ44" title="Number of shares exchanged"><ix:nonFraction name="CODX:StockIssuedDuringPeriodSharesExchanged" contextRef="From2021-12-302021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="Shares">3.2</ix:nonFraction></span>
million shares of the Company&#8217;s common stock and contingent consideration that includes up to approximately <span id="xdx_90E_ecustom--StockIssuedDuringPeriodSharesContingentConsideration_pn5n6_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zPnhF0WvXfi8" title="Number of shares on contingent consideration"><ix:nonFraction name="CODX:StockIssuedDuringPeriodSharesContingentConsideration" contextRef="From2021-12-302021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="Shares">1.4</ix:nonFraction></span>
million shares and approximately <span id="xdx_906_eus-gaap--ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z17Sh1OpxpR9" title="Warrants to purchase shares of common stock"><ix:nonFraction name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">456,000</ix:nonFraction></span>
warrants to purchase shares of the Company&#8217;s common stock. The contingent consideration is based on the achievement of certain
milestones, which include regulatory approval for identified products, as well as production and net revenue targets. Upon the
completion of the acquisition, both ACI and IdMo became <span id="xdx_909_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--ACIAndIDMOMember_zgxagB5DXadk" title="Equity method investment ownership percentage"><ix:nonFraction name="us-gaap:EquityMethodInvestmentOwnershipPercentage" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember_custom_ACIAndIDMOMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">100</ix:nonFraction></span>%
wholly-owned subsidiaries of the Company.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value of assets acquired and liabilities assumed was based on a preliminary valuation, with estimates and assumptions subject to
change within the measurement period. During 2022, the Company finalized negotiations that were ongoing as of December 31, 2021 with
one remaining shareholder of ACI, which resulted in an increase to the purchase consideration of $<span id="xdx_900_eus-gaap--BusinessCombinationConsiderationTransferred1_c20220101__20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zC4Sdzwgjm08" title="Purchase consideration"><ix:nonFraction name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="From2022-01-012022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">580,135</ix:nonFraction></span>. Additionally, there was an
increase of $<span id="xdx_902_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iI_c20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zTtIceZTeuO3" title="Estimated tax liabilities"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" contextRef="AsOf2022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">101,593</ix:nonFraction></span> in the estimated tax liabilities that resulted from the acquisition. Due to the change in purchase consideration
and estimated tax liabilities, a measurement period adjustment was recorded, resulting in an increase to goodwill of $<span id="xdx_90A_eus-gaap--GoodwillPeriodIncreaseDecrease_c20220101__20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zOemQnDwFDfd" title="Increase of goodwill"><ix:nonFraction name="us-gaap:GoodwillPeriodIncreaseDecrease" contextRef="From2022-01-012022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">681,728</ix:nonFraction></span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Following
the resolution with the remaining shareholder, the total number of shares exchanged as purchase consideration was approximately <span id="xdx_90A_ecustom--StockIssuedDuringPeriodSharesExchanged_pn5n6_c20220101__20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zrP9tH0BBAE8" title="Number of shares exchanged"><ix:nonFraction name="CODX:StockIssuedDuringPeriodSharesExchanged" contextRef="From2022-01-012022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="Shares">3.3</ix:nonFraction></span> million
shares. Additionally, the updated purchase consideration includes contingent consideration of up to approximately <span id="xdx_901_ecustom--StockIssuedDuringPeriodSharesContingentConsideration_pn5n6_c20220101__20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zZE01ABY3hkd" title="Number of shares on contingent consideration"><ix:nonFraction name="CODX:StockIssuedDuringPeriodSharesContingentConsideration" contextRef="From2022-01-012022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="Shares">1.4</ix:nonFraction></span> million shares
and <span id="xdx_903_eus-gaap--ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_iI_c20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z9JaUPz09Kh8" title="Warrants to purchase shares of common stock"><ix:nonFraction name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" contextRef="AsOf2022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">465,000</ix:nonFraction></span> warrants to purchase shares of the Company&#8217;s common stock.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
addition, the adjustments to the provisional purchase consideration amount resulted in an increase in the gain on remeasurement of acquisition
contingencies of $<span id="xdx_909_ecustom--RemeasurementOfAcquisitionContingencies_iI_c20221231_z02kcJu2QvUj" title="Remeasurement of acquisition contingencies"><ix:nonFraction name="CODX:RemeasurementOfAcquisitionContingencies" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">78,617</ix:nonFraction></span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 44; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->44<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock"><p id="xdx_896_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_zoB9dOcK5MMe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
total purchase consideration, including adjustment during the measurement period, was allocated to the assets acquired and liabilities
assumed as set forth below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BC_zBpWnSsXO9jb" style="display: none">Schedule
of Assets and Liabilities assumed</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amounts Recognized as of Acquisition Date (as previously reported)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Measurement Period Adjustments</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amounts Recognized as of Acquisition Date (as adjusted)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Purchase Consideration</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 52%; text-indent: 10pt; padding-left: 0pt">Fair value of common shares issued</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_988_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z5aMwDkMYC6" title="Fair value of common shares issued" style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2021-12-302021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">25,160,223</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98B_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zl9jDNzremH7" title="Fair value of common shares issued" style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2021-12-302021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">480,776</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_985_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zF4tr7SJ2ed7" title="Fair value of common shares issued" style="width: 12%; text-align: right"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueAcquisitions" contextRef="From2021-12-302021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">25,640,999</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Payable to shareholder</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zT9oWzJ6vvW" title="Payable to shareholders" style="text-align: right"><ix:nonFraction name="CODX:PaymentsToShareHoldersValueAcquisitions" contextRef="From2021-12-302021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">100,000</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6NKrL9iJ6Xg" title="Payable to shareholders" style="text-align: right">(<ix:nonFraction name="CODX:PaymentsToShareHoldersValueAcquisitions" contextRef="From2021-12-302021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">100,000</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zrcLvDmkTEDa" title="Payable to shareholders" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0797">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 10pt; padding-left: 0pt">Fair value of contingent shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqHlBE2TeBfe" title="Fair value of contingent shares" style="text-align: right"><ix:nonFraction name="us-gaap:ContingentConsiderationClassifiedAsEquityFairValueDisclosure" contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">8,684,669</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zAiB51WFkRLf" title="Fair value of contingent shares" style="text-align: right"><ix:nonFraction name="us-gaap:ContingentConsiderationClassifiedAsEquityFairValueDisclosure" contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">165,957</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zgASPTa2c2I5" title="Fair value of contingent shares" style="text-align: right"><ix:nonFraction name="us-gaap:ContingentConsiderationClassifiedAsEquityFairValueDisclosure" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">8,850,626</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Fair value of contingent warrants</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zHFgoUGsbtY5" title="Fair value of contingent warrants" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:WarrantsNotSettleableInCashFairValueDisclosure" contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,747,972</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zk8EBzLNRS7" title="Fair value of contingent warrants" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:WarrantsNotSettleableInCashFairValueDisclosure" contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">33,402</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zLntKmJTHlXh" title="Fair value of contingent warrants" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:WarrantsNotSettleableInCashFairValueDisclosure" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,781,374</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total fair value of consideration transferred</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98F_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zq8Y7EoXGfIb" title="Business combination, consideration transferred" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="From2021-12-302021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">35,692,864</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_984_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6eqjpfNBNb2" title="Business combination, consideration transferred" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="From2021-12-302021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">580,135</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_980_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zJa2SITxTzAe" title="Business combination, consideration transferred" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationConsiderationTransferred1" contextRef="From2021-12-302021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">36,272,999</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Identifiable assets acquired and liabilities assumed</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-indent: 10pt; padding-left: 0pt">Cash</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_986_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zjqRs8TqBtNa" title="Cash" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,196,243</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zwIqiNOHJVDf" title="Cash" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0819">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98F_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zoCQ5SU7Dca6" title="Cash" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,196,243</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Accounts receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zR1VEVyGOPQl" title="Accounts receivables" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">31,170</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zJzcHUlxhYik" title="Accounts receivables" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0825">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zIyX5wCb1wK6" title="Accounts receivables" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">31,170</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Prepaid expenses and other current assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zbaAiONKMTk3" title="Prepaid expenses and other current assets" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">70,321</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zGfN5UU06tW9" title="Prepaid expenses and other current assets" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0831">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zYYUDSSoZoSc" title="Prepaid expenses and other current assets" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">70,321</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Property and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z4VdkvdGtR49" title="Property and equipments" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">408,173</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqeLJoDbpC43" title="Property and equipments" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0837">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6jBfUlvuqr8" title="Property and equipments" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">408,173</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Technology - In-process research and development</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_ze5XozRn7Pze" title="Research and development in process" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities" contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">26,101,000</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6qo5o6x4Dca" title="Research and development in process" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0843">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zKR8Tm5vwSL9" title="Research and development in process" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">26,101,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Non-competition agreements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zVAunUFtzO74" title="Non competition agreements" style="text-align: right"><ix:nonFraction name="CODX:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements" contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,094,000</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zYZHR6yPvnt1" title="Non competition agreements" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0849">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zLZkkiBfP5V9" title="Non competition agreements" style="text-align: right"><ix:nonFraction name="CODX:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,094,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Accounts payable and accrued other expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zWQgWB38BlBl" title="Accounts payable and accrued other expenses" style="text-align: right">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,069,274</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zFP1kpZVmam" title="Accounts payable and accrued other expenses" style="text-align: right">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">101,593</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zopN2Jh5ioA6" title="Accounts payable and accrued other expenses" style="text-align: right">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,170,867</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Deferred tax liability</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zcmrW1yJz8xj" title="Deferred tax liability" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,845,587</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zCbpuxXwzNFj" title="Deferred tax liability" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0861">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zc7D9xtVa4eb" title="Deferred tax liability" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,845,587</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Total identifiable net assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zzUvKq4IhyJi" title="Total indentifiable net assets" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">20,986,046</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z1iMxZtU3ESh" title="Total indentifiable net assets" style="text-align: right">(<ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">101,593</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zMW8BD18K1Q1" title="Total indentifiable net assets" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">20,884,453</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Goodwill</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--Goodwill_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zrRHWc5ZnMUh" title="Goodwill" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">14,706,818</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--Goodwill_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zNdDz62Tu8r8" title="Goodwill" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">681,728</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--Goodwill_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zboMmRD6wpW6" title="Goodwill" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">15,388,546</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zGT0kqlJ9Zb6" title="Total" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">35,692,864</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zR9m7fgGdva8" title="Total" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">580,135</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqTzeTfYzus9" title="Total" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">36,272,999</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A9_zzmiRTSI2Z0l" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
in-process research and development is considered an indefinite-lived intangible until the completion or abandonment of the research
and development activities. The non-competition agreements are being amortized over a range of <span id="xdx_905_eus-gaap--FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_dtY_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z9bPMhKDR54" title="Finite lived intangible assets  remaining amortization period"><ix:nonNumeric contextRef="From2022-01-012022-12-31_srt_MinimumMember" format="ixt-sec:duryear" name="us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1">1.5</ix:nonNumeric></span> to <span id="xdx_90F_eus-gaap--FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_dtY_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zqxOLWsjvGRa" title="Finite lived intangible assets  remaining amortization period"><ix:nonNumeric contextRef="From2022-01-012022-12-31_srt_MaximumMember" format="ixt-sec:duryear" name="us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1">3</ix:nonNumeric></span> years.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:FairValueDisclosuresTextBlock"><p id="xdx_805_eus-gaap--FairValueDisclosuresTextBlock_z1MIZ3VUEmR7" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
5 &#8211; <span id="xdx_82B_zdSaUArUCdde">Fair Value Measurements</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company measures and records certain financial assets and liabilities at fair value on a recurring basis. Fair value is based on the
price that would be received from selling an asset or paid to transfer a liability in an orderly transaction between market participants
at the measurement date.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following three levels of inputs are used to measure the fair value of financial assets and liabilities:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
1: Quoted market prices in active markets for identical assets or liabilities.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
2: Observable market-based inputs or unobservable inputs that are corroborated by market data.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
3: Unobservable inputs that are not corroborated by market data.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 45; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->45<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock"><p id="xdx_89D_eus-gaap--FairValueAssetsMeasuredOnRecurringBasisTextBlock_zNmBIn0gxFR5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes the assets and liabilities measured at fair value on a recurring basis as of December 31, 2022 and December
31, 2021, by level within the fair value hierarchy:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BE_zHl7PXx6c4Q9" style="display: none">Schedule of Fair Value Assets and Liabilities</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_za35LZtp3k6f" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 1)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zZzHIAE0QYXe" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 2)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel3Member_zqm58cXIqJHj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 3)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49F_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember_zQ1lL7V2gdYj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="14" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 1)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 2)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 3)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Assets:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--CashAndCashEquivalentsFairValueDisclosure_iI_zbyRrbAqafw" style="vertical-align: bottom; background-color: White">
    <td style="width: 44%; text-align: left; text-indent: 10pt; padding-left: 0pt">Cash equivalents</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">&#160;&#160;&#160;<span style="-sec-ix-hidden: xdx2ixbrl0891">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" unitRef="USD">10,179,667</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0893">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">10,179,667</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--MarketableSecurities_iI_pp0p0_zzVO4M4LdAeb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 0pt; padding-left: 10pt">Marketable securities (U.S. treasury bills and notes)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0896">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:MarketableSecurities" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">58,289,066</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0898">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:MarketableSecurities" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">58,289,066</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--AssetsFairValueDisclosure_iI_pp0p0_zUWfYQWephfb" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Total assets measured at fair value</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0901">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">68,468,733</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0903">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">68,468,733</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Liabilities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_ecustom--FairValueOfContingentConsiderationToCommonStock_iI_pp0p0_za3kJmZITjvf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Contingent consideration - common stock</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0906">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0907">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="CODX:FairValueOfContingentConsiderationToCommonStock" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,499,147</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="CODX:FairValueOfContingentConsiderationToCommonStock" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,499,147</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_ecustom--FairValueOfContingentConsiderationToWarrants_iI_pp0p0_z7AG7cBfWd0e" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Contingent consideration - warrants</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0911">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0912">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="CODX:FairValueOfContingentConsiderationToWarrants" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">233,209</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="CODX:FairValueOfContingentConsiderationToWarrants" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">233,209</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LiabilitiesFairValueDisclosure_iI_pp0p0_zaWsVHrCUdW6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Total liabilities measured at fair value</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0916">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0917">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesFairValueDisclosure" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,732,356</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesFairValueDisclosure" contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,732,356</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49F_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z85NmgSrPMEe" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 1)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zOzl9z5G0Llj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 2)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel3Member_zdaj3V3Afke1" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 3)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49F_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember_zhrYTVGZIXgj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="14" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 1)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 2)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 3)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Assets:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--MarketableSecurities_iI_pp0p0_zFMgCxKeNT1i" style="vertical-align: bottom; background-color: White">
    <td style="width: 44%; text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Marketable securities (certificates of deposit)</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right">&#160;&#160;&#160;<span style="-sec-ix-hidden: xdx2ixbrl0921">-</span></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right"><ix:nonFraction name="us-gaap:MarketableSecurities" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,255,266</ix:nonFraction></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0923">-</span></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right"><ix:nonFraction name="us-gaap:MarketableSecurities" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,255,266</ix:nonFraction></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--AssetsFairValueDisclosure_iI_pp0p0_z7tnOpuiG6s4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total assets measured at fair value</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0926">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,255,266</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0928">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:AssetsFairValueDisclosure" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,255,266</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Liabilities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_ecustom--FairValueOfContingentConsiderationToCommonStock_iI_pp0p0_z8Qq2Av8CJc6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Contingent consideration - common stock</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0931">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0932">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="CODX:FairValueOfContingentConsiderationToCommonStock" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">8,684,669</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="CODX:FairValueOfContingentConsiderationToCommonStock" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">8,684,669</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_ecustom--FairValueOfContingentConsiderationToWarrants_iI_pp0p0_z1AwCSUhJ3x" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Contingent consideration - warrants</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0936">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0937">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="CODX:FairValueOfContingentConsiderationToWarrants" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,747,972</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="CODX:FairValueOfContingentConsiderationToWarrants" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,747,972</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LiabilitiesFairValueDisclosure_iI_pp0p0_zeXUXPL2mrF" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total liabilities measured at fair value</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0941">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0942">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesFairValueDisclosure" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">10,432,641</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:LiabilitiesFairValueDisclosure" contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">10,432,641</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AC_zzW0iUPDTim8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s financial instruments that are measured at fair value on a recurring basis consist of certificates of deposit and U.S.
treasury bills and notes as of December 31, 2021 and 2022, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
connection with the acquisitions of IdMo and ACI on December 31, 2021, the Company recorded a liability for contingent consideration
in the form of shares of common stock and warrants to purchase common stock. The fair value of contingent consideration is calculated
using a discounted probability weighted valuation model. Discount rates used in such calculations are a significant assumption that are
not observed in the market, and therefore, the resulting fair value represents a Level 3 measurement.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock"><p id="xdx_89F_eus-gaap--FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_z5taQBMfavhc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
changes for Level 3 items measured at fair value on a recurring basis are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BF_zDAxofxhNmji" style="display: none">Schedule of Changes in Fair Value Measurement</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_49F_20220101__20221231_znsNOgdNLwad" style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--BusinessCombinationContingentConsiderationLiabilityNoncurrent_iS_pp0p0_zkKvjc5i4wz1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; padding-left: 0pt">Fair value as of December 31, 2021</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">10,432,641</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_ecustom--ContingentConsideredIssuedForMeasurementPeriodAdjustments_z247waNkq5Jg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Change in contingent purchase consideration for measurement period adjustments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="CODX:ContingentConsideredIssuedForMeasurementPeriodAdjustments" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">199,359</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_ecustom--ContingentConsideredIssuedForBusinessAcquisitions_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Change in fair value of contingent consideration issued for business acquisitions</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="CODX:ContingentConsideredIssuedForBusinessAcquisitions" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">7,899,644</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--BusinessCombinationContingentConsiderationLiabilityNoncurrent_iE_zfFo3ktUKHt6" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt; padding-left: 0pt">Fair value as of December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,732,356</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AD_zodLvhN4guXj" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 46; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->46<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value of the contingent consideration is based on the fair value of the contingent consideration-common stock and contingent consideration-warrants.
The fair value of the contingent consideration-common stock is equal to the probability-adjusted value of the Company&#8217;s common
stock as of the valuation date. The fair value of the contingent consideration-warrants is equal to the probability adjusted value of
a call option with terms consistent with the terms of the warrants as of the valuation date. Prior to the probability adjustments, the
warrants were valued based on the following inputs:</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock"><p id="xdx_897_eus-gaap--FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock_zZHSiyyF7nba" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B4_zw5C8B39DwU2" style="display: none">Schedule of Contingent Consideration Common Stock and Warrants</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 56%; text-indent: 10pt; padding-left: 0pt">Stock price</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zVVJRU7AwPsf" title="Warrants measurement input" style="width: 18%; text-align: right"><ix:nonFraction name="us-gaap:WarrantsAndRightsOutstandingMeasurementInput" contextRef="AsOf2022-12-31_us-gaap_MeasurementInputSharePriceMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">2.52</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_z7vqzQeVIZG" title="Warrants measurement input" style="width: 18%; text-align: right"><ix:nonFraction name="us-gaap:WarrantsAndRightsOutstandingMeasurementInput" contextRef="AsOf2021-12-31_us-gaap_MeasurementInputSharePriceMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">8.93</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 10pt; padding-left: 0pt">Strike price</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputStrikePriceMember_zfmlUrenCJN4" title="Warrants measurement input" style="text-align: right"><ix:nonFraction name="us-gaap:WarrantsAndRightsOutstandingMeasurementInput" contextRef="AsOf2022-12-31_custom_MeasurementInputStrikePriceMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">9.13</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98D_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputStrikePriceMember_zGt6eTgMthgf" title="Warrants measurement input" style="text-align: right"><ix:nonFraction name="us-gaap:WarrantsAndRightsOutstandingMeasurementInput" contextRef="AsOf2021-12-31_custom_MeasurementInputStrikePriceMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">9.13</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-indent: 10pt; padding-left: 0pt">Volatility</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td title="Warrants measurement input" style="text-align: right"><span id="xdx_903_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputPriceVolatilityMember_zIyI4ZXfye5a" title="Warrants measurement input"><ix:nonFraction name="us-gaap:WarrantsAndRightsOutstandingMeasurementInput" contextRef="AsOf2022-12-31_us-gaap_MeasurementInputPriceVolatilityMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">75.00</ix:nonFraction></span></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td title="Warrants measurement input" style="text-align: right"><span id="xdx_90A_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputPriceVolatilityMember_z8EbF6amFt7" title="Warrants measurement input"><ix:nonFraction name="us-gaap:WarrantsAndRightsOutstandingMeasurementInput" contextRef="AsOf2021-12-31_us-gaap_MeasurementInputPriceVolatilityMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">80.00</ix:nonFraction></span></td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Risk-free rate</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td title="Warrants measurement input" style="text-align: right"><span id="xdx_906_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zCGVh05kNBZ8" title="Warrants measurement input"><ix:nonFraction name="us-gaap:WarrantsAndRightsOutstandingMeasurementInput" contextRef="AsOf2022-12-31_us-gaap_MeasurementInputRiskFreeInterestRateMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">4.10</ix:nonFraction></span></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td title="Warrants measurement input" style="text-align: right"><span id="xdx_90C_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zUlOw4xorjy8" title="Warrants measurement input"><ix:nonFraction name="us-gaap:WarrantsAndRightsOutstandingMeasurementInput" contextRef="AsOf2021-12-31_us-gaap_MeasurementInputRiskFreeInterestRateMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1.30</ix:nonFraction></span></td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Expected term</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td title="Warrants measurement input" style="text-align: right"><span id="xdx_90E_eus-gaap--WarrantsAndRightsOutstandingTerm_iI_dtY_c20221231_zdHebkjF1P7k" title="Expected term"><ix:nonNumeric contextRef="AsOf2022-12-31" format="ixt-sec:duryear" name="us-gaap:WarrantsAndRightsOutstandingTerm">4.0</ix:nonNumeric></span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td title="Warrants measurement input" style="text-align: right"><span id="xdx_906_eus-gaap--WarrantsAndRightsOutstandingTerm_iI_dtY_c20211231_zAvxvuojf4r4" title="Expected term"><ix:nonNumeric contextRef="AsOf2021-12-31" format="ixt-sec:duryear" name="us-gaap:WarrantsAndRightsOutstandingTerm">5.0</ix:nonNumeric></span></td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
order to calculate the probability-adjusted value of the contingent consideration-common stock and contingent
consideration-warrants, the Company estimated the probability as of the valuation date of achieving certain milestones, which
include regulatory approval for identified products, as well as production and net revenue targets. The probability of achieving the
milestone related to net revenues was estimated as of the acquisition date using a Monte Carlo simulation valuation model.
Significant inputs other than the fair value assumptions noted above were consistent as of the valuation date. The unobservable
significant inputs to the valuation model were as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><b>December 31, 2022</b></td>
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; width: 60%">Stock price</td>
    <td style="width: 2%">&#160;</td>
    <td style="width: 1%">$</td>
    <td id="xdx_98E_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zlQ87Dl6Vyla" title="Business combination,contingent consideration" style="text-align: right; width: 16%"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput" contextRef="AsOf2022-12-31_us-gaap_MeasurementInputSharePriceMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">2.52</ix:nonFraction></td>
    <td style="width: 1%">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zoWfN4LNLVik" title="Business combination,contingent consideration" style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput" contextRef="AsOf2021-12-31_us-gaap_MeasurementInputSharePriceMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">8.93</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Risk-free rate</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_986_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_z4yZAY1oryd5" title="Business combination,contingent consideration" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput" contextRef="AsOf2022-12-31_us-gaap_MeasurementInputRiskFreeInterestRateMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">4.10</ix:nonFraction></td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zqs5FoMKZmm4" title="Business combination,contingent consideration" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput" contextRef="AsOf2021-12-31_us-gaap_MeasurementInputRiskFreeInterestRateMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">1.30</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Expected term</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_988_ecustom--BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_dtY_c20220101__20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputExpectedTermMember_zV03xOskg673" title="Business combination,contingent consideration" style="text-align: right"><ix:nonNumeric contextRef="From2022-01-012022-12-31_us-gaap_MeasurementInputExpectedTermMember" format="ixt-sec:duryear" name="CODX:BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm">4.0</ix:nonNumeric></td>
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_dtY_c20210101__20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputExpectedTermMember_zMyG6tQ5glZ9" title="Business combination,contingent consideration" style="text-align: right"><ix:nonNumeric contextRef="From2021-01-012021-12-31_us-gaap_MeasurementInputExpectedTermMember" format="ixt-sec:duryear" name="CODX:BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm">5.0</ix:nonNumeric></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Weighted-average cost of capital</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_98C_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputCostOfCapitalMember_zign2TiBfOpj" title="Business combination,contingent consideration" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput" contextRef="AsOf2022-12-31_custom_MeasurementInputCostOfCapitalMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">27.00</ix:nonFraction></td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputCostOfCapitalMember_zsPtNGISMoW9" title="Business combination,contingent consideration" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput" contextRef="AsOf2021-12-31_custom_MeasurementInputCostOfCapitalMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">27.00</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Revenue discount rate</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_982_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputDiscountRateMember_zj7XSoiFH0le" title="Business combination,contingent consideration" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput" contextRef="AsOf2022-12-31_us-gaap_MeasurementInputDiscountRateMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">9.50</ix:nonFraction></td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputDiscountRateMember_z0asoFeyAfBk" title="Business combination,contingent consideration" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput" contextRef="AsOf2021-12-31_us-gaap_MeasurementInputDiscountRateMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">9.50</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Equity volatility</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_98D_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputEquityVolatilityMember_zrH4SwDUpeC1" title="Business combination,contingent consideration" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput" contextRef="AsOf2022-12-31_custom_MeasurementInputEquityVolatilityMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">75.00</ix:nonFraction></td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputEquityVolatilityMember_zsAOTJizpiud" title="Business combination,contingent consideration" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput" contextRef="AsOf2021-12-31_custom_MeasurementInputEquityVolatilityMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">80.00</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Asset volatility</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_98C_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputAssetVolatilityMember_zlss7vR74gW3" title="Business combination,contingent consideration" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput" contextRef="AsOf2022-12-31_custom_MeasurementInputAssetVolatilityMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">80.00</ix:nonFraction></td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputAssetVolatilityMember_zinRGtpOSIJ5" title="Business combination,contingent consideration" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput" contextRef="AsOf2021-12-31_custom_MeasurementInputAssetVolatilityMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">80.00</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Revenue volatility</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_984_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputRevenueVolatilityMember_z6SxEvgIuM8f" title="Business combination,contingent consideration" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput" contextRef="AsOf2022-12-31_custom_MeasurementInputRevenueVolatilityMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">30.00</ix:nonFraction></td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputRevenueVolatilityMember_zD07wLrSxP54" title="Business combination,contingent consideration" style="text-align: right"><ix:nonFraction name="us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput" contextRef="AsOf2021-12-31_custom_MeasurementInputRevenueVolatilityMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Pure">30.00</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A3_zIXG8v5onFl8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Fair
Value of Other Financial Instruments</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
carrying amounts of certain financial instruments, including cash held in banks, accounts receivable, notes receivable, accounts payable,
accrued liabilities, and other liabilities approximate fair value due to their short-term maturities and are excluded from the fair value
tables above.</span></p>
<!-- Field: Split-Segment; Name: 001 -->
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 47; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->47<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock"><p id="xdx_803_eus-gaap--PropertyPlantAndEquipmentDisclosureTextBlock_zTSQtH96u0pc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
6 &#8211; <span id="xdx_824_zxVUEkm82tod">Property and Equipment</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:PropertyPlantAndEquipmentTextBlock"><p id="xdx_894_eus-gaap--PropertyPlantAndEquipmentTextBlock_zufKFbdQN93d" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Property
and equipment, net consisted of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zAadQyTXeCaa" style="display: none">Schedule
of Property and Equipment</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; font-weight: bold; text-align: center">Estimated Useful Lives</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"> in years</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 42%; text-align: left">Lab equipment</td><td style="width: 2%">&#160;</td>
    <td style="width: 16%; text-align: center"><span id="xdx_901_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember__srt--RangeAxis__srt--MinimumMember_znVZJlCzr6Ic" title="Property and equipment estimated useful lives"><ix:nonNumeric contextRef="From2022-01-012022-12-31_us-gaap_EquipmentMember_srt_MinimumMember" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife">3</ix:nonNumeric></span> - <span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember__srt--RangeAxis__srt--MaximumMember_zF5oTl8H1ogj" title="Property and equipment estimated useful lives"><ix:nonNumeric contextRef="From2022-01-012022-12-31_us-gaap_EquipmentMember_srt_MaximumMember" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife">5</ix:nonNumeric></span></td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zmu1PucZUiq8" title="Property and equipment, gross" style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2022-12-31_us-gaap_EquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,574,730</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zvVVONa7RET4" title="Property and equipment, gross" style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_EquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,476,813</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: center"><span id="xdx_901_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdsAndLeaseholdImprovementsMember__srt--RangeAxis__srt--MinimumMember_ztUqRzb2vuV8" title="Property and equipment estimated useful lives"><ix:nonNumeric contextRef="From2022-01-012022-12-31_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_srt_MinimumMember" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife">0</ix:nonNumeric></span> -<span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdsAndLeaseholdImprovementsMember__srt--RangeAxis__srt--MaximumMember_z2MMxlVmKNS" title="Property and equipment estimated useful lives"><ix:nonNumeric contextRef="From2022-01-012022-12-31_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_srt_MaximumMember" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife">3</ix:nonNumeric></span></td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_z0kVDaESJbz7" title="Property and equipment, gross" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2022-12-31_us-gaap_LeaseholdImprovementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">224,957</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zAWPIBdXfhZj" title="Property and equipment, gross" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">3,157</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Office equipment, furniture and other</td><td>&#160;</td>
    <td style="text-align: center"><span id="xdx_90B_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember__srt--RangeAxis__srt--MinimumMember_zKxW5Kt7wvUf" title="Property and equipment estimated useful lives"><ix:nonNumeric contextRef="From2022-01-012022-12-31_us-gaap_OfficeEquipmentMember_srt_MinimumMember" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife">2</ix:nonNumeric></span> - <span id="xdx_905_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember__srt--RangeAxis__srt--MaximumMember_z7soLGISr3b7" title="Property and equipment estimated useful lives"><ix:nonNumeric contextRef="From2022-01-012022-12-31_us-gaap_OfficeEquipmentMember_srt_MaximumMember" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife">5</ix:nonNumeric></span></td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zI15Oax5n0q3" title="Property and equipment, gross" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2022-12-31_us-gaap_OfficeEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">112,044</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zj6rcaM7vD6j" title="Property and equipment, gross" style="text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="AsOf2021-12-31_us-gaap_OfficeEquipmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">75,401</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Less accumulated depreciation and amortization</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iNI_pp0p0_di_c20221231_ztsrrGjJbPX6" title="Less: accumulated depreciation" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,372,248</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iNI_di_c20211231_zSRxpUN4hrMb" title="Less: accumulated depreciation" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">622,155</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left; padding-bottom: 2.5pt">Fixed assets, net</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20221231_zqUJfyGgMRq2" title="Property and equipment, net" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">2,539,483</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231_zK8eEBaGZP4a" title="Property and equipment, net" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,933,216</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A3_zYZGAX9aj8r6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock"><p id="xdx_801_eus-gaap--GoodwillAndIntangibleAssetsDisclosureTextBlock_zvTqkoXhIJff" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
7 - <span id="xdx_827_z2i3tE7VZVn6">Goodwill and Intangible Assets</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Goodwill</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill
represents the excess of purchase price and related costs over the value assigned to net tangible and identifiable intangible assets
acquired in business combinations. The following table presents the changes in the carrying amount of goodwill for the year ended December
31, 2022:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfGoodwillTextBlock"><p id="xdx_89B_eus-gaap--ScheduleOfGoodwillTextBlock_zy5wuSkyLhJe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zXJqfN4WXEx2" style="display: none">Schedule
of Goodwill</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Balance as of December 31, 2021</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--Goodwill_iS_c20220101__20221231_zSG9p4Pxx3b3" title="Goodwil - beginning" style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:Goodwill" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">14,706,818</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Measurement period adjustments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--GoodwillTranslationAndPurchaseAccountingAdjustments_c20220101__20221231_zpqLXCPVf9Ue" title="Measurement period adjustments" style="text-align: right"><ix:nonFraction name="us-gaap:GoodwillTranslationAndPurchaseAccountingAdjustments" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">681,728</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Goodwill impairment charges</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--GoodwillImpairmentLoss_iN_di_c20220101__20221231_z4hdoEOIjmW2" title="Goodwill impairment charges" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:GoodwillImpairmentLoss" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">15,388,546</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Balance as of December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_982_eus-gaap--Goodwill_iE_c20220101__20221231_z7ijE6Juloa3" title="Goodwill - ending" style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1056">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AE_zAhn09mGzKHg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company assesses goodwill for impairment at the reporting unit level on an annual basis, or whenever events or changes in circumstances
occur that indicate that the fair value of a reporting unit is below its carrying amount. The Company estimates the fair value of its
reporting unit by using forecasts of discounted future cash flows and peer market multiples. If the fair value is less than the carrying
value, impairment will be recognized in the amount by which the carrying value exceeds the fair value. The Company performed a qualitative
and quantitative goodwill impairment assessment as of December 31, 2022. Based on the impairment assessment performed the Company concluded
that it was more likely than not that the fair value of the Company&#8217;s reporting unit was less than it&#8217;s carrying amount.
Accordingly, the Company recorded an impairment charge to reduce the carrying value of goodwill to $<span id="xdx_901_eus-gaap--Goodwill_iI_dxL_c20221231_z9GLIApMpEy7" title="Goodwill::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1058">0</span></span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Intangible
Assets, Net</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"><p id="xdx_89A_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zUJFjeOcz53i" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Intangible
assets, net consisted of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span><span id="xdx_8BB_zxPOmLGPkh4g" style="display: none">Schedule of Intangible Assets, Net</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="13" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Weighted-Average</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Gross</td><td style="font-weight: bold">&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Net</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Useful Life (1)</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Carrying</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Accumulated</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Carrying</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(in Years)</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amortization</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 28%; text-align: left">In-process research and development</td><td style="width: 2%">&#160;</td>
    <td style="width: 16%; text-align: center"><span id="xdx_90A_ecustom--IndefiniteLivedIntangibleAssetUsefulLife_c20220101__20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_fKDEp_z31eQo26Yp3h" title="Estimated useful lives in years, term"><ix:nonNumeric contextRef="From2022-01-012022-12-31_us-gaap_InProcessResearchAndDevelopmentMember" name="CODX:IndefiniteLivedIntangibleAssetUsefulLife">Indefinite</ix:nonNumeric></span></td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_zlqYNjg9VeQb" title="Intangible assets, gross" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2022-12-31_us-gaap_InProcessResearchAndDevelopmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">26,101,000</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_z6TiZWwKz567" title="Less accumulated amortization" style="width: 14%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1066">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_z1DHedeNQFx8" title="Intangible assets, net" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="AsOf2022-12-31_us-gaap_InProcessResearchAndDevelopmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">26,101,000</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Non-competition agreements</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="text-align: center; padding-bottom: 1.5pt"><span id="xdx_903_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20220101__20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_fKDEp_zyl1YHHvtPda" title="Estimated useful lives in years"><ix:nonNumeric contextRef="From2022-01-012022-12-31_us-gaap_NoncompeteAgreementsMember" format="ixt-sec:duryear" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife">2.7</ix:nonNumeric></span></td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zKLnTMb3a3xj" title="Intangible assets, gross" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2022-12-31_us-gaap_NoncompeteAgreementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,094,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zjqD8jYMj49k" title="Less accumulated amortization" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2022-12-31_us-gaap_NoncompeteAgreementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">426,667</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zkbTNhTIkuk5" title="Intangible assets, net" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="AsOf2022-12-31_us-gaap_NoncompeteAgreementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">667,333</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 10pt">Total intangible assets</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231_z0WMvdVhQkE" title="Intangible assets, gross" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">27,195,000</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231_zlLPxyW87qx9" title="Less accumulated amortization" style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" sign="-" unitRef="USD">426,667</ix:nonFraction>
                                                                          </td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_986_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231_z4Mzzlolgmhh" title="Intangible assets, net" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">26,768,333</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 48; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->48<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="13" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Weighted-Average</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Gross</td><td style="font-weight: bold">&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Net</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Useful Life (1)</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Carrying</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Accumulated</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Carrying</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(in Years)</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amortization</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 28%; text-align: left">In-process research and development</td><td style="width: 2%">&#160;</td>
    <td style="width: 16%; text-align: center"><span id="xdx_90D_ecustom--IndefiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_fKDEp_zmb4oy7mWM02" title="Estimated useful lives in years, term"><ix:nonNumeric contextRef="From2021-01-012021-12-31_us-gaap_InProcessResearchAndDevelopmentMember" name="CODX:IndefiniteLivedIntangibleAssetUsefulLife">Indefinite</ix:nonNumeric></span></td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" title="Intangible assets, gross" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2021-12-31_us-gaap_InProcessResearchAndDevelopmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">26,101,000</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" title="Less accumulated amortization" style="width: 14%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1088">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" title="Intangible assets, net" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="AsOf2021-12-31_us-gaap_InProcessResearchAndDevelopmentMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">26,101,000</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Non-competition agreements</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="text-align: center; padding-bottom: 1.5pt"><span id="xdx_902_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_fKDEp_zvgT5UO5hyG4" title="Estimated useful lives in years"><ix:nonNumeric contextRef="From2021-01-012021-12-31_us-gaap_NoncompeteAgreementsMember" format="ixt-sec:duryear" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife">2.7</ix:nonNumeric></span></td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" title="Intangible assets, gross" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2021-12-31_us-gaap_NoncompeteAgreementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,094,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" title="Less accumulated amortization" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1096">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" title="Intangible assets, net" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="AsOf2021-12-31_us-gaap_NoncompeteAgreementsMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">1,094,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 10pt">Total intangible assets</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231_pp0p0" title="Intangible assets, gross" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">27,195,000</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231_pp0p0" title="Less accumulated amortization" style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1102">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98A_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231_pp0p0" title="Intangible assets, net" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">27,195,000</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A8_zkJq1VlpJQtl" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock"><p id="xdx_890_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zSenvXJLUMnd" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
expected future annual amortization expense of the Company&#8217;s intangible assets held as of December 31, 2022 is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_z9TOq4K1fl82" style="display: none">Schedule
of Future Amortization Expense</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; text-align: left; font-weight: bold">Year Ending December 31,</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_495_20221231_zZOgbiMOmSo6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amortization Expense</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_maFLIANzZiM_z6Mwhi5MtC03" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: left; padding-left: 10pt">2023</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">364,668</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_maFLIANzZiM_zPi6oRKVcS4g" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">2024</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">302,665</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsNet_iTI_mtFLIANzZiM_z3TYXfozHJl7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">667,333</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A0_zHH8uO1SyI2a" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock"><p id="xdx_802_eus-gaap--AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_zm6Y3esEzqU3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
8 - <span id="xdx_825_zAY3xpmuykU1">Accrued Expenses</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock"><p id="xdx_895_eus-gaap--ScheduleOfAccruedLiabilitiesTableTextBlock_z9hfSnagKB3e" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Accrued
expenses consisted of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span><span id="xdx_8B6_zH6tJZRCqCYg" style="display: none">Schedule of Accrued Expenses</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_496_20221231_zkSHRlKVq0s3" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20211231_zjQv8PLgiAbg" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--AccruedPayrollTaxesCurrent_iI_maALCzYz0_zviMbejSzDh2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Payroll liabilities</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:AccruedPayrollTaxesCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">428,354</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:AccruedPayrollTaxesCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,455,694</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--AccruedSalesCommissionCurrent_iI_maALCzYz0_z4EfOxx8R6g1" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Distributor commissions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccruedSalesCommissionCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">159,725</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AccruedSalesCommissionCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">509,500</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--OtherAccruedLiabilitiesCurrent_iI_maALCzYz0_zW1KYHmRCux8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Other accrued liabilities</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherAccruedLiabilitiesCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">346,368</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OtherAccruedLiabilitiesCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">894,458</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--AccruedLiabilitiesCurrent_iI_mtALCzYz0_zKwdyYIa59bj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt">Total accrued expenses</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">934,447</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,859,652</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A5_zWUluv5rLJP" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 49; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->49<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:RevenueFromContractWithCustomerTextBlock"><p id="xdx_804_eus-gaap--RevenueFromContractWithCustomerTextBlock_zJUwRxDKasJf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
9 &#8211; <span id="xdx_822_zjkqTOCXytW6">Revenue</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock"><p id="xdx_89A_eus-gaap--ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_zM7wlJgRkMy7" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table sets forth revenue by geographic area:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span><span id="xdx_8B9_zmM82Zzp7lIe" style="display: none">Summary of Revenue by Geographic Area</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Years Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">United States</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231__srt--StatementGeographicalAxis__country--US_zimrR6QgVbRf" title="Revenue" style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="From2022-01-012022-12-31_country_US" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">24,671,554</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__country--US_z7WKIFaN0eG2" title="Revenue" style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="From2021-01-012021-12-31_country_US" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">52,185,812</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Rest of World</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231__srt--StatementGeographicalAxis__custom--RestOfWorldMember_zYuxB70qmDc2" title="Revenue" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="From2022-01-012022-12-31_custom_RestOfWorldMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">9,546,655</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__custom--RestOfWorldMember_zCDwnwTChxM1" title="Revenue" style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="From2021-01-012021-12-31_custom_RestOfWorldMember" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">45,699,791</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt; padding-left: 10pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98F_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231_za3Y0xDQt9R3" title="Revenue" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">34,218,209</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231_zIhBz77hyrBd" title="Revenue" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" scale="0" unitRef="USD">97,885,603</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Percentage of revenue by area:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">United States</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20220101__20221231__srt--StatementGeographicalAxis__country--US__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zxV4aaR3VD1h" title="Percentage of revenue" style="text-align: right"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="From2022-01-012022-12-31_country_US_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">72</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20210101__20211231__srt--StatementGeographicalAxis__country--US__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zRsBOsltOZh1" title="Percentage of revenue" style="text-align: right"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="From2021-01-012021-12-31_country_US_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">53</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Rest of World</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20220101__20221231__srt--StatementGeographicalAxis__custom--RestOfWorldMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zWJhVAw4HHPh" title="Percentage of revenue" style="text-align: right"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="From2022-01-012022-12-31_custom_RestOfWorldMember_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">28</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20210101__20211231__srt--StatementGeographicalAxis__custom--RestOfWorldMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zbZY118tALWh" title="Percentage of revenue" style="text-align: right"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" contextRef="From2021-01-012021-12-31_custom_RestOfWorldMember_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">47</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AE_z6DTVykvSYy6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Deferred
Revenue</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock"><p id="xdx_898_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_zdzSJgbIrtU6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Changes
in the Company&#8217;s deferred revenue balance for the years ended December 31, 2022 and 2021 were as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B9_zgyashcgWsyc" style="display: none">Schedule of Deferred Revenue</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; padding-left: 0pt">Balance as of December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ContractWithCustomerLiability_iS_c20210101__20211231_zaNqra3MoAck" title="Deferred revenue, beginning balance" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerLiability" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">305,307</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Revenue recognized included in deferred revenue balance at the beginning of the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_iN_di_c20210101__20211231_znJaQpWhemu" title="Revenue recognized included in deferred revenue balance at the beginning of the period" style="text-align: right">(<ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">256,110</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Increase due to prepayments from customers</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_ecustom--IncreaseDueToPrepaymentsFromCustomers_c20210101__20211231_zIdtHNZ5daS4" title="Increase due to prepayments from customers" style="text-align: right"><ix:nonFraction name="CODX:IncreaseDueToPrepaymentsFromCustomers" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">79,213</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Increase due to note receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_ecustom--IncreaseDueToNoteReceivable_c20210101__20211231_zhlcMCtd0jnc" title="Increase due to note receivable" style="text-align: right"><ix:nonFraction name="CODX:IncreaseDueToNoteReceivable" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">150,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Decrease due to refunds to customers and application to open balances</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_ecustom--DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances_iN_di_c20210101__20211231_zWwoYEv5wWr6" title="Decrease due to refunds to customers and application to open balances" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="CODX:DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">128,410</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 0pt">Balance as of December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_983_eus-gaap--ContractWithCustomerLiability_iS_c20220101__20221231_zFhMrgQZDwWk" title="Deferred revenue, beginning balance" style="text-align: right"><ix:nonFraction name="us-gaap:ContractWithCustomerLiability" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">150,000</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Revenue recognized included in deferred revenue balance at the beginning of the period</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_iN_di_c20220101__20221231_zxxFrWtj6R1c" title="Revenue recognized included in deferred revenue balance at the beginning of the period" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">150,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt; padding-left: 0pt">Balance as of December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--ContractWithCustomerLiability_iE_c20220101__20221231_zkZzjylX9Hyi" title="Deferred revenue, Ending balance" style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1170">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A7_zHA6d8SMDEae" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:EarningsPerShareTextBlock"><p id="xdx_804_eus-gaap--EarningsPerShareTextBlock_zot6njMAJs1c" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
10 &#8211; <span id="xdx_82D_zxFu40OGiPvi">Earnings per Share</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"><p id="xdx_896_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zFu7d9B86eWh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table reconciles the numerator and the denominator used to calculate basic and diluted earnings per share for years ended December
31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BC_zW4rVQiMKRi" style="display: none">Schedule of Basic and Diluted Earnings Per Share</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_492_20220101__20221231_z9M85j28GsQ8" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20210101__20211231_z5oOCk12xVr9" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Years Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold">Numerator</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--NetIncomeLoss_z297CqgT2nP7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left; padding-bottom: 2.5pt">Net income, as reported</td><td style="width: 2%; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; width: 16%; text-align: right">(<ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">14,238,249</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; text-align: left">)</td><td style="width: 2%; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; width: 16%; text-align: right"><ix:nonFraction name="us-gaap:NetIncomeLoss" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">36,658,564</ix:nonFraction></td><td style="width: 1%; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold">Denominator</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_zpKSsPuKKwNk" style="vertical-align: bottom; background-color: White">
    <td>Weighted average shares, basic</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">31,479,028</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">28,874,555</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--WeightedAverageNumberDilutedSharesOutstandingAdjustment_zGZ0UQ8vOq0j" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Dilutive effect of stock options, warrants and RSUs</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1182">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,029,131</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_zipzMT2Yjxwl" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt">Shares used to compute diluted earnings per share</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">31,479,028</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">29,903,686</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--EarningsPerShareBasic_pid_zv6tUWCanpve" style="vertical-align: bottom; background-color: White">
    <td>Basic earnings per share</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" sign="-" unitRef="USDPShares">0.45</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.27</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--EarningsPerShareDiluted_pid_zdtnkl0idUJd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Diluted earnings per share</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" sign="-" unitRef="USDPShares">0.45</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.23</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A4_zZPmtsaZ1mb8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 50; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->50<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For
the year ended December 31, 2021, potentially dilutive securities of <span id="xdx_908_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_c20210101__20211231_z5mNnEeEIssi" title="Securities excluded from computation of diluted earnings per share"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">154,644</ix:nonFraction></span> were excluded from the computation of diluted earnings per
share because the effect would have been anti-dilutive. The computation of diluted earnings per share for the years ended December 31,
2022 and December 31, 2021 also excludes the approximately <span id="xdx_90E_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_pn5n6_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zyCVXZeusELd" title="Securities excluded from computation of diluted earnings per share"><span id="xdx_904_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_pn5n6_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zEL5HRB7zYRg" title="Securities excluded from computation of diluted earnings per share"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="Shares"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="Shares">1.4</ix:nonFraction></ix:nonFraction></span></span> million shares of common stock and approximately <span id="xdx_90D_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_zqDJ4SZs2htg" title="Securities excluded from computation of diluted earnings per share"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="From2021-01-012021-12-31_us-gaap_WarrantMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">465,000</ix:nonFraction></span> warrants to purchase
shares of common stock mentioned in Note 4 that are contingent upon the achievement of certain milestones.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
a result of incurring a net loss for the year ended December 31, 2022, <span id="xdx_90A_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_pid_do_uShares_c20220101__20221231_zMXTAeNci101" title="Securities excluded from computation of diluted earnings per share"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="From2022-01-01to2022-12-31" format="ixt-sec:numwordsen" decimals="INF" unitRef="Shares">no</ix:nonFraction></span> potentially dilutive securities are included in the calculation
of diluted earnings per share because such effect would be anti-dilutive. The Company had potentially dilutive securities as of December
31, 2022, consisting of: (i) <span id="xdx_901_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_c20220101__20221231__us-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis__us-gaap--RestrictedStockUnitsRSUMember_zfMMExuuL1V4" title="Securities excluded from computation of diluted earnings per share"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,443,238</ix:nonFraction></span> restricted stock units and (ii) <span id="xdx_903_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_c20220101__20221231__us-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis__us-gaap--EmployeeStockOptionMember_zCWZUpG2lyZe" title="Securities excluded from computation of diluted earnings per share"><ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="From2022-01-012022-12-31_us-gaap_EmployeeStockOptionMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">50,000</ix:nonFraction></span> options.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock"><p id="xdx_80C_eus-gaap--DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_zrE0U3lqKW07" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
11 &#8211; <span id="xdx_82A_zjDZwJ8HzAl8">Stock-Based Compensation</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Stock
Incentive Plans</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s board of directors adopted, and shareholders approved, the Co-Diagnostics, Inc. Amended and Restated 2015 Long Term Incentive
Plan (the &#8220;Incentive Plan&#8221;) providing for the issuance of stock-based incentive awards to employees, officers, consultants,
directors and independent contractors. On August 31, 2022 the shareholders approved an increase in the number of awards available for
issuance under the Incentive Plan to an aggregate of <span id="xdx_900_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_iI_c20220831__us-gaap--PlanNameAxis__custom--TwoThousandFifteenLongTermIncentivePlanMember_z17TDeg04W69" title="Number of common shares availalble for issuance"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" contextRef="AsOf2022-08-31_custom_TwoThousandFifteenLongTermIncentivePlanMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">12,000,000</ix:nonFraction></span> shares of common stock. The number of awards available for issuance under
the Incentive Plan was <span id="xdx_907_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_iI_c20221231__us-gaap--PlanNameAxis__custom--TwoThousandFifteenLongTermIncentivePlanMember_z6l0Wg4KYHKd" title="Number of common shares availalble for issuance"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" contextRef="AsOf2022-12-31_custom_TwoThousandFifteenLongTermIncentivePlanMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">6,210,790</ix:nonFraction></span> at December 31, 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Stock
Options</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"><p id="xdx_89D_eus-gaap--ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_zU7Jdw4RcIo6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes option activity during the years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B7_zUfDgN8BJuNc" style="display: none">Schedule of Option Activity</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Number of Options</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Exercise Price</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Fair Value</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Remaining Contractual Life (Years)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 44%">Outstanding at December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_c20210101__20211231_zZ8tWKvxHUo1" title="Number of Options Outstanding, Beginning" style="width: 10%; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,300,588</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zYlYqcyPL3vj" title="Weighted Average Exercise Price Outstanding, Beginning" style="width: 10%; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.44</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20210101__20211231_ziwNIJ8YdwV8" title="Weighted Average Fair Value Outstanding, Beginning" style="width: 10%; text-align: right"><ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.24</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_c20210101__20211231_ztgppmJTgss7" title="Number of Options Outstanding, Granted" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1222">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zgPhkaRRZ2Nf" title="Weighted Average Exercise Price, Granted" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1224">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20210101__20211231_zqclO0wK9Vm8" title="Weighted Average Fair Value, Granted" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1226">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_c20210101__20211231_zYdtBO0NMSr3" title="Number of Options Outstanding, Expired" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1228">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zU5MuRoAul8d" title="Weighted Average Exercise Price, Expired" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1230">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_c20210101__20211231_z8aAk9CDvFoh" title="Weighted Average Fair Value, Expired" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1232">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Forfeited/Cancelled</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_c20210101__20211231_zu1AG2fNXBD4" title="Number of Options Outstanding, Forfeited/Cancelled" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1234">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_c20210101__20211231_zgjwcSQcTQ95" title="Weighted Average Exercise Price, Forfeited/Cancelled" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1236">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_c20210101__20211231_zwKulepzb3gg" title="Weighted Average Fair Value, Forfeited/Cancelled" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1238">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_di_c20210101__20211231_z6fnIuxBWCek" title="Number of Options Outstanding, Exercised" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">189,225</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zugS8rkljjsj" title="Weighted Average Exercise Price, Exercised" style="padding-bottom: 1.5pt; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.38</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_98C_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised_pid_c20210101__20211231_zkJOrwsIEpab" title="Weighted Average Fair Value, Exercised" style="padding-bottom: 1.5pt; text-align: right"><ix:nonFraction name="CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.12</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Outstanding at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_c20220101__20221231_z9wxyPHMMC1" title="Number of Options Outstanding, Beginning" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,111,363</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20220101__20221231_zk2AcgXgmtJ3" title="Weighted Average Exercise Price Outstanding, Beginning" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.12</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20220101__20221231_zjInKmA0dMTe" title="Weighted Average Fair Value Outstanding, Beginning" style="text-align: right"><ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.31</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_c20220101__20221231_z5FBgPgVdjsh" title="Number of Options Outstanding, Granted" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1252">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zodQd860ouGg" title="Weighted Average Exercise Price, Granted" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1254">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20220101__20221231_zJUkPQL4NJwh" title="Weighted Average Fair Value, Granted" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1256">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_c20220101__20221231_zhFFAtW5zTae" title="Number of Options Outstanding, Expired" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1258">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_c20220101__20221231_zjPS2hiTgCh6" title="Weighted Average Exercise Price, Expired" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1260">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_c20220101__20221231_zCqNK3wWDpXh" title="Weighted Average Fair Value, Expired" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1262">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Forfeited/Cancelled</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_c20220101__20221231_zHUUaMJpCdYh" title="Number of Options Outstanding, Forfeited/Cancelled" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1264">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_c20220101__20221231_zRUk3W6hhVI8" title="Weighted Average Exercise Price, Forfeited/Cancelled" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1266">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_c20220101__20221231_zUyrkgvRmw2a" title="Weighted Average Fair Value, Forfeited/Cancelled" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1268">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_di_c20220101__20221231_zKHpqEMoJre4" title="Number of Options Outstanding, Exercised" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">70,791</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zXw1rlKCHEfe" title="Weighted Average Exercise Price, Exercised" style="padding-bottom: 1.5pt; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.10</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_985_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised_pid_c20220101__20221231_zEeDOOsIJpUi" title="Weighted Average Fair Value, Exercised" style="padding-bottom: 1.5pt; text-align: right"><ix:nonFraction name="CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.51</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Outstanding at December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_c20220101__20221231_ztBpzDGj1KIb" title="Number of Options Outstanding, Ending" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,040,572</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_pid_c20220101__20221231_zM7nlYIox1r7" title="Weighted Average Exercise Price Outstanding, Ending" style="padding-bottom: 2.5pt; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.19</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_98E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231_zh6Xy9HXO3h7" title="Weighted Average Fair Value Outstanding, Ending" style="padding-bottom: 2.5pt; text-align: right"><ix:nonFraction name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.37</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; text-align: right"><span id="xdx_902_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm_dtY_c20220101__20221231_zZjhpbzX2xo7" title="Weighted-average Remaining Contractual Life (years) Outstanding, Ending"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt-sec:duryear" name="CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm">5.88</ix:nonNumeric></span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Exercisable at December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_c20220101__20221231_zfD15avwOGL1" title="Number of Options Exercisable Ending" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,040,572</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_iE_pid_c20220101__20221231_z62yJHkW9Ii9" title="Weighted Average Exercise Price, Exercisable Ending" style="padding-bottom: 2.5pt; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.19</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_981_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable_iE_pid_c20220101__20221231_zicDaWEAxMB9" title="Weighted Average Fair Value, Exercisable Ending" style="padding-bottom: 2.5pt; text-align: right"><ix:nonFraction name="CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.37</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; text-align: right"><span id="xdx_906_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_dtY_c20220101__20221231_zLgkXNayJ8n7" title="Weighted-average Remaining Contractual Life (years), Exercisable Ending"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1">5.88</ix:nonNumeric></span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A5_zhFhDUfFEVUc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 51; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->51<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
total intrinsic value of options exercised during the years ended December 31, 2022 and 2021 was approximately $<span id="xdx_904_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_pn5n6_c20220101__20221231__us-gaap--AwardTypeAxis__custom--StockOptionsMember_zfoHhQgabM16" title="Intrinsic value of options value exercised"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" contextRef="From2022-01-012022-12-31_custom_StockOptionsMember" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">0.4</ix:nonFraction></span> million and $<span id="xdx_90C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_pn5n6_c20210101__20211231__us-gaap--AwardTypeAxis__custom--StockOptionsMember_zTPy4yV4Qtlf" title="Intrinsic value of options value exercised"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" contextRef="From2021-01-012021-12-31_custom_StockOptionsMember" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">1.3</ix:nonFraction></span>
million, respectively. The aggregate intrinsic value of outstanding options at December 31, 2022 and 2021 was approximately $<span id="xdx_901_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_iI_pn5n6_c20221231__us-gaap--AwardTypeAxis__custom--StockOptionsMember_zRM4heEiYrse" title="Aggregate intrinsic value of outstanding options"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" contextRef="AsOf2022-12-31_custom_StockOptionsMember" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">0.8</ix:nonFraction></span> million
and $<span id="xdx_904_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_iI_pn5n6_c20211231__us-gaap--AwardTypeAxis__custom--StockOptionsMember_zB6uVAabqK9e" title="Aggregate intrinsic value of outstanding options"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" contextRef="AsOf2021-12-31_custom_StockOptionsMember" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">7.6</ix:nonFraction></span> million, respectively. As of December 31, 2022, there were no unvested options and no unrecognized stock-based compensation
expense related to options.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Restricted
Stock Units</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock"><p id="xdx_894_eus-gaap--ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_zUCHLGJY8Ayh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
grant date fair value of RSUs granted is determined using the closing market price of the Company&#8217;s common stock on the grant date
with the associated compensation expense amortized over the vesting period of the awards. The following table sets forth the outstanding
RSUs and related activity for the years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zaWAWQdBhK0d" style="display: none">Schedule of Outstanding Restricted Stock Units and Related Activity</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Number of RSUs</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Grant Date Fair Value</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Unvested at December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iS_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zAcGCtZdl6K4" title="Number of Restricted Stock Units, Outstanding Beginning" style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="AsOf2020-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">522,500</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zfaraZnqnNIe" title="Weighted Average Grant Date Fair Value, Outstanding Beginning" style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="AsOf2020-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">10.49</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zyJeREGNgYUd" title="Number of Restricted Stock Units, Granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" contextRef="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,217,500</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zdRW3eOeTJc6" title="Weighted Average Grant Date Fair Value, Granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">9.76</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Vested</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_iN_di_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zWGnePFfQHc5" title="Number of Restricted Stock Units, Vested" style="text-align: right">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" contextRef="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">438,502</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zVA8TI2EtO67" title="Weighted Average Grant Date Fair Value, Vested" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" contextRef="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">10.10</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Forfeited/Cancelled</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_iN_di_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zWPzKyhi0tfg" title="Number of Restricted Stock Units, Forfeited/Cancelled" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" contextRef="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">34,083</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z2vLdz6kWfQi" title="Weighted Average Grant Date Fair Value, Forfeited/Cancelled" style="padding-bottom: 1.5pt; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" contextRef="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">9.91</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Unvested at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iS_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zNfdlgokbHU6" title="Number of Restricted Stock Units, Outstanding Beginning" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="AsOf2021-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,267,415</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z2qQgf9Zm1U7" title="Weighted Average Grant Date Fair Value, Outstanding Beginning" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="AsOf2021-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">9.94</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z7uz8Xx1gkqf" title="Number of Restricted Stock Units, Granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">1,925,476</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z0SjFPXtRXh4" title="Weighted Average Grant Date Fair Value, Granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">5.66</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Vested</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_iN_di_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z3nQ9tx0OeBe" title="Number of Restricted Stock Units, Vested" style="text-align: right">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">725,166</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zjFyOyYUs0Y2" title="Weighted Average Grant Date Fair Value, Vested" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">8.66</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Forfeited/Cancelled</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_iN_di_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zwsvr7Az7XU2" title="Number of Restricted Stock Units, Forfeited/Cancelled" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">41,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zhWA30WQpcU8" title="Weighted Average Grant Date Fair Value, Forfeited/Cancelled" style="padding-bottom: 1.5pt; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">8.31</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Unvested at December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iE_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zGAPwCFupTf9" title="Number of Restricted Stock Units, Outstanding Ending" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="AsOf2022-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">2,426,725</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zEopSoyFCzE8" title="Weighted Average Grant Date Fair Value, Outstanding Ending" style="padding-bottom: 2.5pt; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="AsOf2022-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">7.06</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A7_zd6QdLoMZ3sj" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2022, there was $<span id="xdx_900_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_iI_pn5n6_c20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zjXQepSdwIS3" title="Unrecognized stock-based compensation"><ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" contextRef="AsOf2022-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">14.7</ix:nonFraction></span> million of unrecognized stock-based compensation expense related to outstanding RSUs which is expected
to be recognized over a weighted-average period of <span id="xdx_907_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_dtY_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zSL5pq6lAePj" title="Unrecognized stock-based compensation recognition period"><ix:nonNumeric contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750" format="ixt-sec:duryear" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">2.2</ix:nonNumeric></span> years.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Warrants</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has issued warrants related to financings, acquisitions and as compensation to third parties for services provided. The Company
estimates the fair value of issued warrants on the date of issuance as determined using a Black-Scholes pricing model. The Company amortizes
the fair value of issued warrants using a vesting schedule based on the terms and conditions of each warrant if granted for services.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 52; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->52<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock"><p id="xdx_891_eus-gaap--ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock_znvjaERswV0h" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes warrant activity during the years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B5_zLyr3BCph05c" style="display: none">Schedule of Warrant Activity</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Number of Warrants</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Exercise Price</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Fair Value</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Remaining Contractual Life (Years)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 44%">Outstanding at December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iS_c20210101__20211231_z1UryfnyDDHe" title="Number of Warrants Outstanding, Beginning" style="width: 10%; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">70,000</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_980_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zaIJa6UuoTC3" title="Weighted Average Exercise Price, Beginning" style="width: 10%; text-align: right"><ix:nonFraction name="CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.83</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_iS_pid_c20210101__20211231_zYf1Ny4dm4R" title="Weighted Average fair value, Beginning" style="width: 10%; text-align: right"><ix:nonFraction name="CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">5.21</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right"><span id="xdx_90E_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1_dtY_c20210101__20211231_zlUOD9z4uvy8" title="Weighted-average Remaining Contractual Life (Years) Outstanding"><ix:nonNumeric contextRef="From2021-01-012021-12-31" format="ixt-sec:duryear" name="CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1">3.3</ix:nonNumeric></span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_c20210101__20211231_zTriLyHQRKJ6" title="Number of Warrants Outstanding, Granted" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">456,281</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zt5kJf6iG9H6" title="Weighted Average Exercise Price, Granted" style="text-align: right"><ix:nonFraction name="CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">9.13</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zOVk1LlTH5Q4" title="Weighted Average Fair Value, Granted" style="text-align: right"><ix:nonFraction name="CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">3.83</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations_iN_di_c20210101__20211231_zKCoV4BNwDWk" title="Number of Warrants Outstanding, Expired" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1358">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zA9x2zWsaZY6" title="Weighted Average Exercise Price, Expired" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1360">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zoN2jHgEnoOa" title="Weighted Average Fair Value, Expired" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1362">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Forfeited/Cancelled</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures_c20210101__20211231_zzD4fMIdEfud" title="Number of Warrants Outstanding, Forfeited/Cancelled" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1364">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zATzHGCLpXYd" title="Weighted Average Exercise Price, Forfeited/Cancelled" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1366">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_pid_c20210101__20211231_z6w7ir4SrMke" title="Weighted Average Fair Value, Forfeited/Cancelled" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1368">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_iN_di_c20210101__20211231_zaQ7Z4fRw3w1" title="Number of Warrants Outstanding, Exercised" style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1370">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_98F_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zL6mmTDP5Rvd" title="Weighted Average Exercise Price, Exercised" style="padding-bottom: 1.5pt; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1372">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_983_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zMoVbjvpY4Cl" title="Weighted Average Fair Value, Exercised" style="padding-bottom: 1.5pt; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1374">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Outstanding at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iS_c20220101__20221231_z4LNwiJ8Hlrh" title="Number of Warrants Outstanding, Beginning" style="text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">526,281</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98A_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20220101__20221231_zTlAoB4JXGkj" title="Weighted Average Exercise Price, Beginning" style="text-align: right"><ix:nonFraction name="CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">8.15</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_989_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_iS_pid_c20220101__20221231_z3UOFMYcplia" title="Weighted Average fair value, Beginning" style="text-align: right"><ix:nonFraction name="CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">4.01</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span id="xdx_90F_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_dtY_c20210101__20211231_zAwyRqRKgR9b" title="Weighted-average Remaining Contractual Life (Years) Outstanding"><ix:nonNumeric contextRef="From2021-01-012021-12-31" format="ixt-sec:duryear" name="CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3">4.7</ix:nonNumeric></span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Issued for adjustments to contingent purchase consideration</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_ecustom--ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration_c20220101__20221231_zuDdzMzeQzbj" title="Number of Warrants Outstanding, Issued" style="text-align: right"><ix:nonFraction name="CODX:ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">8,719</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_ecustom--IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zsY7bVN439Fh" title="Weighted Average Exercise Price, Issued" style="text-align: right"><ix:nonFraction name="CODX:IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">9.13</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zSf2rOkqqgw8" title="Weighted Average Fair Value, Issued" style="text-align: right"><ix:nonFraction name="CODX:IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.88</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_c20220101__20221231_zXZwj3pdTic6" title="Number of Warrants Outstanding, Granted" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1390">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zucEClSrwDZd" title="Weighted Average Exercise Price, Granted" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1392">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zB5RSHYLSyZ1" title="Weighted Average Fair Value, Granted" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1394">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations_iN_di_c20220101__20221231_z5GxYKmAJ3P8" title="Number of Warrants Outstanding, Expired" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1396">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zYiZHrKY7SM7" title="Weighted Average Exercise Price, Expired" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1398">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zOKkDIjzHOS5" title="Weighted Average Fair Value, Expired" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1400">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Forfeited/Cancelled</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures_c20220101__20221231_z2qdU3avusLj" title="Number of Warrants Outstanding, Forfeited/Cancelled" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1402">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zBNUiX9IRRs7" title="Weighted Average Exercise Price, Forfeited/Cancelled" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1404">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zP1dJTyFXN07" title="Weighted Average Fair Value, Forfeited/Cancelled" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1406">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_iN_di_c20220101__20221231_zWITLqpQoaUi" title="Number of Warrants Outstanding, Exercised" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">50,000</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_98B_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_z0jqMG6hDjs2" title="Weighted Average Exercise Price, Exercised" style="padding-bottom: 1.5pt; text-align: right"><ix:nonFraction name="CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.00</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_98C_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zfQ85BjLHTO2" title="Weighted Average Fair Value, Exercised" style="padding-bottom: 1.5pt; text-align: right"><ix:nonFraction name="CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">1.22</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Outstanding at December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iE_c20220101__20221231_zoSCXGIeCqCi" title="Number of Warrants Outstanding, Ending" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">485,000</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_980_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice_iE_pid_c20220101__20221231_zdDYQh9v5Exl" title="Weighted Average Exercise Price, Ending" style="padding-bottom: 2.5pt; text-align: right"><ix:nonFraction name="CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">8.81</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_988_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231_zZQVy6ukPVG1" title="Weighted Average Fair Value, Ending" style="padding-bottom: 2.5pt; text-align: right"><ix:nonFraction name="CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">2.43</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; text-align: right"><span id="xdx_909_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_dtY_c20220101__20221231_zt4bPrPcYrsk" title="Weighted-average Remaining Contractual Life (Years) Outstanding"><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" format="ixt-sec:duryear" name="CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3">4.0</ix:nonNumeric></span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A2_zD857AmVDPJa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
intrinsic value of warrants exercised during the years ended December 31, 2022 and 2021 was $<span id="xdx_903_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue_pn5n6_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_zKcuEj9Z3v95" title="Intrinsic value of warrants exercised"><ix:nonFraction name="CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue" contextRef="From2022-01-012022-12-31_us-gaap_WarrantMember" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">0.3</ix:nonFraction></span> million and $<span id="xdx_907_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue_pn5n6_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_z6UKO9NLNo52" title="Intrinsic value of warrants exercised"><ix:nonFraction name="CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue" contextRef="From2021-01-012021-12-31_us-gaap_WarrantMember" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">0.0</ix:nonFraction></span> million, respectively.
The aggregate intrinsic value of outstanding warrants at December 31, 2022 was approximately $<span id="xdx_901_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_iI_c20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_z4Hdz0hxQvMc" title="Aggregate intrinsic value of options outstanding"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" contextRef="AsOf2022-12-31_us-gaap_WarrantMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">22,000</ix:nonFraction></span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_901_ecustom--ClassOfWarrantExercisable_iI_c20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_zxNAS9XntZP7" title="Warrants exercisable"><ix:nonFraction name="CODX:ClassOfWarrantExercisable" contextRef="AsOf2022-12-31_us-gaap_WarrantMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">20,000</ix:nonFraction></span>
warrants are exercisable at December 31, 2022. As discussed in Note 3 and Note 4, approximately <span id="xdx_90D_eus-gaap--ClassOfWarrantOrRightOutstanding_iI_c20221231_zFp5qpa3U77l" title="Warrants purchase"><ix:nonFraction name="us-gaap:ClassOfWarrantOrRightOutstanding" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">456,000</ix:nonFraction></span> warrants to purchase shares of
the Company&#8217;s common stock were issued in connection with the acquisition of ACI and IdMo. The ability to exercise the warrants
is contingent upon the achievement of certain development and revenue milestones on or before January 1, 2027. There was no unrecognized
stock-based compensation expense related to warrants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">See
Note 5 for additional information regarding the fair value calculation of the warrants issued during the year ended December 31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Stock
Issued for Services</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has issued restricted stock to third parties for services provided. The grant date fair value of the restricted stock granted
is determined using the closing market price of the Company&#8217;s common stock on the grant date with the associated compensation expense
amortized over the vesting period of the stock awards. The Company issued <span id="xdx_901_eus-gaap--StockIssuedDuringPeriodSharesIssuedForServices_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ThirdPartiesMember__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zuQq7uj4WyHf" title="Number of shares issued for services"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesIssuedForServices" contextRef="From2022-01-012022-12-31_custom_ThirdPartiesMember_us-gaap_RestrictedStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">0</ix:nonFraction></span> and <span id="xdx_902_eus-gaap--StockIssuedDuringPeriodSharesIssuedForServices_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ThirdPartiesMember__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zfmodYMO9Vqg" title="Number of shares issued for services"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesIssuedForServices" contextRef="From2021-01-012021-12-31_custom_ThirdPartiesMember_us-gaap_RestrictedStockMember" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">5,548</ix:nonFraction></span> shares of restricted stock for services during
the years ended December 31, 2022 and 2021, respectively, and there was no unrecognized stock-based compensation expense related to restricted
stock issued.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 53; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->53<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Stock-Based
Compensation Expense</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock"><p id="xdx_891_eus-gaap--ScheduleOfShareBasedCompensationActivityTableTextBlock_zs6xlJlFwo7b" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company recognized stock-based compensation expense related to the types of awards discussed above as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zXucSKiIchDl" style="display: none">Schedule of Recognized
Stock-based Compensation Expense</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20220101__20221231_zVCYSlFIIuG7" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20210101__20211231_zpsBsMggoHH1" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Years Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--EmployeeStockOptionMember_zBxGRGPK80W2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; padding-left: 0pt">Options</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="From2022-01-012022-12-31_us-gaap_EmployeeStockOptionMember272309781" format="ixt:numdotdecimal" decimals="0" unitRef="USD">78,115</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="From2021-01-012021-12-31_us-gaap_EmployeeStockOptionMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">292,754</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zjYcvU2Apzqj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Restricted stock units</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,465,108</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,164,750</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--StockCompensationPlanMember_zHKzJbSWcZ49" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Stock</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1444">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="From2021-01-012021-12-31_us-gaap_StockCompensationPlanMember" format="ixt:numdotdecimal" decimals="0" unitRef="USD">51,900</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--AllocatedShareBasedCompensationExpense_zCqX0PaJtA7a" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt; text-indent: 10pt; padding-left: 0pt">Total stock-based compensation expense</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,543,223</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,509,404</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A0_z7uQNSaBqP8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:IncomeTaxDisclosureTextBlock"><p id="xdx_801_eus-gaap--IncomeTaxDisclosureTextBlock_z5M2F2Ur3Rlg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
12 &#8211; <span id="xdx_827_zB3eqQ8LtrBf">Income Taxes</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock"><p id="xdx_89B_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_zKoRoXiLLDWe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
components of the provision for income taxes consists of the following for the years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BE_zTRMQlv4Nzha" style="display: none">Schedule
of Components Income Tax Provision</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20220101__20221231_zMfuosEX12H9" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49B_20210101__20211231_zXrSkdX7bf1a" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Year Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_iB_zItKkEmAOVHf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Current:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--CurrentFederalTaxExpenseBenefit_i01_maCFSALzO40_zglWyXf1pJHf" style="vertical-align: bottom; background-color: White">
    <td style="width: 64%; text-indent: 10pt; padding-left: 0pt">Federal</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:CurrentFederalTaxExpenseBenefit" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">563,821</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:CurrentFederalTaxExpenseBenefit" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,092,730</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_i01_maCFSALzO40_z3AACDdV9osl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">State</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">266,248</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">886,173</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--CurrentFederalStateAndLocalTaxExpenseBenefit_i01T_mtCFSALzO40_maITEBzvit_zfelvOywAXs2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total current</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CurrentFederalStateAndLocalTaxExpenseBenefit" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">297,573</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:CurrentFederalStateAndLocalTaxExpenseBenefit" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,978,903</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_iB_z1ZXQed8MgS4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Deferred:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--DeferredFederalIncomeTaxExpenseBenefit_i01_maDFSALzrPD_zphTuVY7To89" style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 10pt; padding-left: 0pt">Federal</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">3,945,090</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,394,686</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_i01_maDFSALzrPD_zBtTtG9NtUzl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">State</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">961,468</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">603,642</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--DeferredFederalStateAndLocalTaxExpenseBenefit_i01T_mtDFSALzrPD_maITEBzvit_zbkM8D9mxFNl" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total deferred</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredFederalStateAndLocalTaxExpenseBenefit" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">4,906,558</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:DeferredFederalStateAndLocalTaxExpenseBenefit" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,998,328</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--IncomeTaxExpenseBenefit_iT_mtITEBzvit_zGexWbgHqUKa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Total income tax (benefit) expense</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">4,608,985</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">8,977,231</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A5_zEu5SrToj2Jf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock"><p id="xdx_89F_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zvGIDloIP8f2" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">A
reconciliation of income tax expense at the statutory federal income tax rate and income taxes as reflected in the financial statements
is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_z1pUq1ZZtIE5" style="display: none">Schedule
of Benefit from Income Taxes and Effective Tax Rates</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20220101__20221231_zo6S7rTZAeHc" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49B_20210101__20211231_zDtONAgXNDDb" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Year Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_dp_uPure_zhCcAQmNpf4f" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left; padding-left: 0pt">Federal income tax expense at statutory rate</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">21.0</ix:nonFraction></td><td style="width: 1%; text-align: left">%</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">21.0</ix:nonFraction></td><td style="width: 1%; text-align: left">%</td></tr>
  <tr id="xdx_408_eus-gaap--EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_dp_uPure_zMkOhSV2TCFk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">State income tax expense, net of federal tax benefit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">4.8</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">3.9</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr id="xdx_403_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract_iB_zpxYfuAK1Yuf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Permanent differences:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_ecustom--EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction_i01_dp_uPure_zltzT5wCqclg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">- Foreign derived intangible income deduction</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="CODX:EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1.4</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-<ix:nonFraction name="CODX:EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" sign="-" unitRef="Pure">3.5</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr id="xdx_408_eus-gaap--EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent_i01_dp_uPure_z43W7ezcyEC2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">- Stock based compensation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-<ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" sign="-" unitRef="Pure">3.6</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">0.2</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40E_ecustom--EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement_i01_dp_uPure_zq1YzxyBEGM8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">- Contingent consideration remeasurement</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="CODX:EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">8.8</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="CODX:EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">0.0</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr id="xdx_404_ecustom--EffectiveIncomeTaxRateReconciliationGoodwillImpairment_i01_dp_uPure_zD3imPA8Za5j" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">- Goodwill impairment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-<ix:nonFraction name="CODX:EffectiveIncomeTaxRateReconciliationGoodwillImpairment" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" sign="-" unitRef="Pure">17.1</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="CODX:EffectiveIncomeTaxRateReconciliationGoodwillImpairment" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">0.0</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_i01_dp_uPure_zOmNw1RC5HSg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">- Other permanent differences</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-<ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" sign="-" unitRef="Pure">0.6</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">0.3</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40C_eus-gaap--EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment_iN_dpi_uPure_z1k6PHrC4Jlj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Research and development credits</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" sign="-" unitRef="Pure">11.1</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-<ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">2.6</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40B_ecustom--EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance_dp_uPure_znriT6IQMKBk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Change in uncertain tax positions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-<ix:nonFraction name="CODX:EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" sign="-" unitRef="Pure">2.1</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="CODX:EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">1.4</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40F_eus-gaap--EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_dp_uPure_zjJrPFNgEeSj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Change in valuation allowance</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">0.0</ix:nonFraction></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">0.0</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherAdjustments_dp_uPure_zS8YrT1MUdQ" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Other</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">0.8</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">%</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-<ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" sign="-" unitRef="Pure">1.0</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">%</td></tr>
  <tr id="xdx_40F_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_dp_uPure_zXuqfck6KiV6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Effective income tax rate</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">24.5</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">%</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">19.7</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">%</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A4_znpxvfXctR04" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




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

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock"><p id="xdx_896_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_zAB1TlhM3wk3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net
deferred tax liabilities consist of the following components as of December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BA_z7Dfq5a2jRta" style="display: none">Schedule
of Deferred Tax Assets</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_493_20221231_z2gSbIutjuYg" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_497_20211231_zz3TgbMP9qFf" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--DeferredTaxAssetsGrossAbstract_iB_z1N2A1soq1N6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Deferred tax assets:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_i01I_maDTAGzwm0_zASVEMrzwZp" style="vertical-align: bottom; background-color: White">
    <td style="width: 64%; text-align: left; text-indent: 20pt; padding-left: 0pt">Accrued liabilities</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">98,141</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1528">-</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_i01I_maDTAGzwm0_zLa8qYxc8Ky8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Reserves and allowances</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">765,004</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">166,050</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits_i01I_maDTAGzwm0_zrLS0S8rsvZg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Deferred compensation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">566,076</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">393,871</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--DeferredTaxAssetsInProcessResearchAndDevelopment_i01I_maDTAGzwm0_zCKLBeVcGQyi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Research and development credits</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">3,460,159</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1537">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_ecustom--DeferredTaxAssetsLeaseLiability_i01I_maDTAGzwm0_zpheh1OWtpu5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Lease liability</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="CODX:DeferredTaxAssetsLeaseLiability" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">85,899</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1540">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_ecustom--DeferredTaxAssetsUniformCapitalization_i01I_maDTAGzwm0_zH8nlHNsfK67" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt">UNICAP</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="CODX:DeferredTaxAssetsUniformCapitalization" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">168,936</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1543">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--DeferredTaxAssetsGross_i01TI_mtDTAGzwm0_maDTAOzex8_zvK9k46gnL36" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total deferred tax assets</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsGross" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,144,215</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:DeferredTaxAssetsGross" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">559,921</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--DeferredTaxLiabilitiesAbstract_iB_zEj7ajrmWG8j" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Deferred tax liabilities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--DeferredTaxLiabilitiesPropertyPlantAndEquipment_i01NI_di_maDITLzLIF_zR2hg1rMK0D8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Property and equipment, net</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">609,261</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">477,542</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_404_eus-gaap--DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_i01NI_di_maDITLzLIF_zwAuSyLfWLWi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Intangibles, net</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,608,914</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,743,972</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--DeferredTaxLiabilitiesPrepaidExpenses_i01NI_di_maDITLzLIF_zs2ZvHpL9DQ7" style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 20pt; padding-left: 0pt">Prepaids</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesPrepaidExpenses" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">156,053</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesPrepaidExpenses" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">560,093</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_403_ecustom--DeferredTaxLiabilitiesRightOfUseAsset_i01I_maDITLzLIF_zBYSAS3xGyOg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Right of use asset</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="CODX:DeferredTaxLiabilitiesRightOfUseAsset" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">91,873</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1561">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--DeferredTaxLiabilitiesOtherComprehensiveIncome_i01NI_di_maDITLzLIF_zZ6iFpTVjfaa" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Other comprehensive income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesOtherComprehensiveIncome" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">96,101</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1564">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--DeferredTaxLiabilitiesOther_i01NI_di_maDITLzLIF_zIuQyMqsui3c" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt">Other</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1566">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxLiabilitiesOther" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">6,758</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_40D_eus-gaap--DeferredIncomeTaxLiabilities_i01NTI_di_mtDITLzLIF_msDTAOzex8_zPHFnstnzBP9" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total deferred tax liabilities</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilities" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,562,202</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxLiabilities" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,788,365</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_409_ecustom--NetDeferredTaxLiabilities_i01I_mtDTAOzex8_maDTANzqQW_z268iDeeNNPd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Net deferred tax (liabilities)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="CODX:NetDeferredTaxLiabilities" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">2,417,987</ix:nonFraction></td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(<ix:nonFraction name="CODX:NetDeferredTaxLiabilities" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" sign="-" unitRef="USD">7,228,444</ix:nonFraction></td><td style="text-align: left">)</td></tr>
  <tr id="xdx_400_eus-gaap--DeferredTaxAssetsValuationAllowance_iI_msDTANzqQW_z6QCumMw7iTl" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Less valuation allowance</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1575">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1576">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_di_mtDTANzqQW_zskQxiyPiP5b" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Net deferred tax (liabilities)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsLiabilitiesNet" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">2,417,987</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(<ix:nonFraction name="us-gaap:DeferredTaxAssetsLiabilitiesNet" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">7,228,444</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">)</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A6_zVrLo5Ore0ba" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">At
December 31, 2022, the Company had <span id="xdx_90D_eus-gaap--OperatingLossCarryforwards_iI_do_c20221231_zjZR6FDiifuj" title="Net operating loss carry-forwards"><ix:nonFraction name="us-gaap:OperatingLossCarryforwards" contextRef="AsOf2022-12-31" format="ixt-sec:numwordsen" decimals="0" unitRef="USD">no</ix:nonFraction></span> federal net operating loss carryforwards and <span id="xdx_90A_eus-gaap--DeferredTaxAssetsInProcessResearchAndDevelopment_iI_dxL_c20211231_zFrtTijyaVz1" title="Research and development credit carry forwards::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1583">no</span></span> federal research and development credit carryforwards.
At December 31, 2022, the Company had <span id="xdx_903_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal_iI_dxL_c20221231_zvNPH4W5Wzol" title="State net operating loss carryforwards::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1585">no</span></span> state net operating loss carryforwards and $<span id="xdx_90A_eus-gaap--DeferredTaxAssetsTaxCreditCarryforwards_iI_c20221231_z80NrwhkpAh8" title="State research and development credit carryforwards"><ix:nonFraction name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwards" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">288,292</ix:nonFraction></span> of state research and development credit
carryforwards. If unused, the state research credit carryforward will expire in 2036.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 54; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->54<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">ASC
Topic 740-10-05 requires that the impact of a tax position be recognized in the financial statements if that position is more likely
than not of being sustained on audit, based on the technical merits of the position. Our unrecognized tax benefit balances included $<span id="xdx_907_eus-gaap--UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_iI_c20221231_zwGl7Rf3mAp3" title="Unrecognized tax benefits that would impact effective tax rate"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,469,577</ix:nonFraction></span>
at December 31, 2022 and $<span id="xdx_904_eus-gaap--UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_iI_c20211231_ztuDLdwiFg39" title="Unrecognized tax benefits that would impact effective tax rate"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,067,853</ix:nonFraction></span> at December 31, 2021 of tax positions that, if recognized, would impact our effective tax rate. The
Company expects no material changes to the liability for unrecognized tax benefits in the next 12 months. Interest and penalties associated
with uncertain tax positions are recorded as a component of income tax expense. A reconciliation of the beginning and ending amount of
unrecognized benefits is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock"><p id="xdx_895_eus-gaap--ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_zrqHktq4Hxbc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B5_zTVlaz4tFVT9" style="display: none">Schedule
of Unrecognized Tax Benefits</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Unrecognized tax benefits at the beginning of the year</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_985_eus-gaap--UnrecognizedTaxBenefits_iS_c20220101__20221231_zEsfTxOY0DAj" title="Unrecognized tax benefits at the beginning of the year" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,067,853</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--UnrecognizedTaxBenefits_iS_c20210101__20211231_zoVcKY5Nt9t9" title="Unrecognized tax benefits at the beginning of the year" style="width: 14%; text-align: right"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" contextRef="AsOf2020-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">447,831</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Gross increases - current year tax positions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_c20220101__20221231_zksi0q1t2Svf" title="Gross increases- current year tax positions" style="text-align: right"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,045,590</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_c20210101__20211231_znCPLez0B4a2" title="Gross increases - current year tax positions" style="text-align: right"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">770,069</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Gross increases - prior year tax positions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_c20220101__20221231_zNtX4s5UWUK3" title="Gross increases- prior year tax positions" style="text-align: right"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">34,035</ix:nonFraction></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_c20210101__20211231_zamsyOPTI7vf" title="Gross increases - prior year tax positions" style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1605">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Gross decreases - prior year tax positions</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_iN_di_c20220101__20221231_z0MvwCAHaza7" title="Gross decreases - prior year tax positions" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">677,901</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_iN_di_c20210101__20211231_zAREE8LQLtUa" title="Gross decreases- prior year tax positions" style="border-bottom: Black 1.5pt solid; text-align: right">(<ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" contextRef="From2021-01-012021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">150,047</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Unrecognized tax benefits at end of year</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_980_eus-gaap--UnrecognizedTaxBenefits_iE_c20220101__20221231_zQcqtjFCvGwk" title="Unrecognized tax benefits at end of year" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,469,577</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98B_eus-gaap--UnrecognizedTaxBenefits_iE_c20210101__20211231_zq46nvqtlKRf" title="Unrecognized tax benefits at end of year" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefits" contextRef="AsOf2021-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">1,067,853</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Interest and penalties in year-end balance</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_986_eus-gaap--UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued_iE_c20220101__20221231_zh2IVKFrFj76" title="Interest and penalties in year-end balance" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">34,035</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98C_eus-gaap--UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued_iE_c20210101__20211231_zfFsMs88rjX8" title="Interest and penalities in year- end balance" style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1617">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A8_zPZ1TGdzNgei" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company is subject to taxation in the United States and other state jurisdictions. The tax years from December 31, 2019 through December
31, 2022 remain open to examination for federal income tax purposes and by the other major taxing jurisdictions to which the Company
is subject. The Company is not currently under examination by any taxing authority.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock"><p id="xdx_804_eus-gaap--CommitmentsAndContingenciesDisclosureTextBlock_zYd4sQUQlrse" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
13 &#8211; <span id="xdx_820_zhvidlkbNctl">Commitments and Contingencies</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Lease
Obligations</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company leases office space under a non-cancellable operating lease and leases cancellable with one month notice. The Company expenses
the cancelable leases in the period incurred in accordance with the practical expedient elected. As such, one lease makes up the entirety
of the right-of-use asset and lease liability disclosed.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:LeaseCostTableTextBlock"><p id="xdx_89B_eus-gaap--LeaseCostTableTextBlock_zlQL63nnZNWh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For
the year ended December 31, 2022, components of lease expense are summarized as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B5_z7huRpqAonJh" style="display: none">Schedule
of Lease Expense</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_494_20220101__20221231_zTcAfbvmNrI2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Year Ended December, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--OperatingLeaseCost_maLCz2lp_zMXzVg0SZvx9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 76%; text-align: left">Operating lease costs</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 18%; text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseCost" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">346,349</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--ShortTermLeaseCost_maLCz2lp_zMjLJbrcEqcd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Short-term lease costs</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:ShortTermLeaseCost" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">384,902</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LeaseCost_iT_mtLCz2lp_zGCbsXJUdfU2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Total lease costs</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LeaseCost" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">731,251</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A6_zv8IPmTVrQba" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Short-term
lease costs under month-to-month lease agreements are paid to related parties.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock"><p id="xdx_891_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_zSWWHFoYGwvk" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2022, the maturities of the Company&#8217;s lease liabilities are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zq2nGaCFCop3" style="display: none">Schedule
of Maturities on Company Lease Liabilities</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_493_20221231_z4QbVlVKyTsa" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Year Ending<br />
 December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_maLOLLPz8za_zycEIygeanf6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 78%; text-align: left; text-indent: 10pt; padding-left: 0pt">2023</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 18%; text-align: right"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">303,059</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_maLOLLPz8za_zX6di43brZH4" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">50,773</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_maLOLLPz8za_zGy967EVcyUc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1635">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFour_iI_maLOLLPz8za_zm8H47QkU1Y2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">2026</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1637">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFive_iI_maLOLLPz8za_z7a4Mm5xQUte" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">2027</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1639">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_iI_maLOLLPz8za_zzK7zvgiQnw" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Thereafter</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1641">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_mtLOLLPz8za_zwo0TqAU3Evf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Total lease payments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">353,832</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iI_zb5o7ZqzxmL2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Less: imputed interest</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">5,915</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--OperatingLeaseLiability_iI_zf1fF5vvsNHk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Present value of operating lease liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">347,917</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--OperatingLeaseLiabilityCurrent_iI_z1WsKphfMc6f" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Less: current portion</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">297,209</ix:nonFraction></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_zLHpE3gaIC77" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Long-term portion</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">50,708</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AF_zFxdQ6yQWrI3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 55; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->55<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="CODX:ScheduleOfOperatingLeaseTableTextBlock"><p id="xdx_89C_ecustom--ScheduleOfOperatingLeaseTableTextBlock_zMRwjQM566vb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Other
information related to operating leases was as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zix7S5fGXOS5" style="display: none">Schedule
of Other Information Related to Operating Lease</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_492_20220101__20221231_zEqQ9PdyNeo7" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><p style="margin-top: 0pt; margin-bottom: 0pt">Year Ended</p>
                                                                                <p style="margin-top: 0pt; margin-bottom: 0pt">December 31, 2022</p></td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--OperatingLeasePayments_zoRrBGesqn98" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: left">Cash paid for operating leases included in operating cash flows</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right"><ix:nonFraction name="us-gaap:OperatingLeasePayments" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="0" unitRef="USD">700,821</ix:nonFraction></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Remaining lease term of operating leases</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90B_eus-gaap--OperatingLeaseWeightedAverageRemainingLeaseTerm1_iI_dtY_c20221231_zCNZF9oIpUY2" title="Remaining lease term of operating leases"><ix:nonNumeric contextRef="AsOf2022-12-31" format="ixt-sec:duryear" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1">1</ix:nonNumeric></span> year </span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Discount rate of operating leases</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--OperatingLeaseWeightedAverageDiscountRatePercent_iI_pid_dp_uPure_c20221231_ziIXv7lI6Cui" title="Discount rate of operating leases" style="text-align: right"><ix:nonFraction name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" scale="-2" unitRef="Pure">3.1</ix:nonFraction></td><td style="text-align: left">%</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8AC_z6JWzAgnjTNh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Litigation</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Liabilities
for loss contingencies arising from claims, assessments, litigation, fines, and penalties and other sources are recorded when it is probable
that a liability has been incurred and the amount can be reasonably estimated. Legal costs incurred in connection with loss contingencies
are expensed as incurred.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company is a defendant in two class action claims and three derivative
actions claiming that the Company promulgated false and misleading press releases to increase the price of our stock to improperly
benefit the officers and directors of the Company. The plaintiffs demand compensatory damages sustained as a result of the Company&#8217;s
alleged wrongdoing in an amount to be proven at trial. The Company believes these lawsuits are without merit and intends to defend the
cases vigorously. The Company is unable to estimate a range of loss, if any, that could result were there to be an adverse final decision
in these cases. As of the date of this report, the Company does not believe it is probable that these cases will result in an unfavorable
outcome; however, if an unfavorable outcome were to occur in these cases, it is possible that the impact could be material to the Company&#8217;s
results of operations in the period(s) in which any such outcome becomes probable and estimable.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock"><p id="xdx_80E_eus-gaap--StockholdersEquityNoteDisclosureTextBlock_zLf7vPOFOCj6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
14 &#8211; <span id="xdx_82A_zts3yGwQJlec">Share Repurchase Program</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
March 2022, the Company&#8217;s board of directors authorized a share repurchase program that would allow the Company to repurchase up
to $<span id="xdx_90E_eus-gaap--StockRepurchaseProgramAuthorizedAmount1_iI_pn5n6_c20220331_zR3I09Nu3Hie" title="Stock repurchase program authorized amount"><ix:nonFraction name="us-gaap:StockRepurchaseProgramAuthorizedAmount1" contextRef="AsOf2022-03-31" format="ixt:numdotdecimal" decimals="-5" scale="6" unitRef="USD">30.0</ix:nonFraction></span> million of CODX common stock. The repurchase program does not obligate the Company to acquire any particular number of common
shares, and the repurchase program may be suspended or discontinued at any time at the Company&#8217;s discretion. The timing and amount
of any share repurchases under the share repurchase program will be determined by Co-Diagnostics&#8217; management at its discretion
based on ongoing assessments of the capital needs of the business, the market price of the Company&#8217;s common stock, corporate and
regulatory requirements, and general market conditions.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For
accounting purposes, common stock repurchased under the stock repurchase program is recorded based upon the transaction date of the applicable
trade. Such repurchased shares are held in treasury and are presented using the cost method. These shares are not retired and are considered
issued but not outstanding. The following table shows the changes in treasury stock for the periods presented:</span></p>

<ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="CODX:ScheduleOfTreasuryStockTableTextBlock"><p id="xdx_898_ecustom--ScheduleOfTreasuryStockTableTextBlock_zYQspkJigVXa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B0_zH3E0U3QxiLa" style="display: none">Schedule
of Treasury Stock</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Year Ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Balance, beginning of period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--TreasuryStockShares_iS_pid_d0_c20220101__20221231_zeHFyhMipQ02" title="Treasury stock, Beginning Balance" style="text-align: right"><ix:nonFraction name="us-gaap:TreasuryStockShares" contextRef="AsOf2021-12-31" format="ixt:zerodash" decimals="INF" sign="-" unitRef="Shares">-</ix:nonFraction></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 76%; text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Repurchases of common stock</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">&#160;</td><td id="xdx_985_ecustom--RepurchasesOfCommonStock_c20220101__20221231_zarCr1EhmVM6" title="Repurchases of common stock" style="border-bottom: Black 1.5pt solid; width: 20%; text-align: right"><ix:nonFraction name="CODX:RepurchasesOfCommonStock" contextRef="From2022-01-01to2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">3,881,658</ix:nonFraction></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt; text-indent: 10pt; padding-left: 0pt">Balance, end of period</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--TreasuryStockShares_iE_pid_c20220101__20221231_zOIbxlcTu7n7" title="Treasury stock, Ending Balance" style="border-bottom: Black 2.5pt double; text-align: right"><ix:nonFraction name="us-gaap:TreasuryStockShares" contextRef="AsOf2022-12-31" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares">3,881,658</ix:nonFraction></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

</ix:nonNumeric><p id="xdx_8A2_zjwtpL91KVA4" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<ix:exclude><!-- Field: Page; Sequence: 56; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->56<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page --></ix:exclude>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

</ix:nonNumeric><ix:nonNumeric contextRef="From2022-01-01to2022-12-31" escape="true" name="us-gaap:SubsequentEventsTextBlock"><p id="xdx_80A_eus-gaap--SubsequentEventsTextBlock_zHAywUvHV6w6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
15 &#8211; <span id="xdx_82F_zG4g5n7yUEK7">Subsequent Events</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">None.</span></p>

</ix:nonNumeric><p id="xdx_812_zDihLOn65kgh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_014"></span>ITEM
9. CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND FINANCIAL DISCLOSURE.</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">None.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 35.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_015"></span>ITEM
9A. CONTROLS AND PROCEDURES</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 35.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Evaluation
of Disclosure Controls and Procedures</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 35.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
maintain a set of disclosure controls and procedures (as defined in Rule 13a-15(e) of the Exchange Act) designed to ensure that information
required to be disclosed in reports filed or submitted under the Exchange Act is recorded, processed, summarized, and reported within
the time periods specified in rules and forms adopted by the SEC. Disclosure controls and procedures include, without limitation, controls
and procedures designed to ensure that information required to be disclosed by a company in the reports that it files or submits under
the Exchange Act is accumulated and communicated to the Company&#8217;s management, including its principal executive and principal financial
officers, as appropriate to allow timely decisions regarding required disclosure.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; text-indent: 35.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
management, with the participation of our Chief Executive Officer and our Chief Financial Officer, evaluated the effectiveness of our
disclosure controls and procedures as of December 31, 2022. Based on the evaluation, management has concluded that our disclosure controls
and procedures are effective as of December 31, 2022 to provide reasonable assurance regarding the reliability <span style="background-color: white">of
our financial reporting and the preparation of our financial statements for external reporting purposes in accordance with U.S. generally
accepted accounting principles.</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; text-indent: 35.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Changes
in Internal Control Over Financial Reporting</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">There
have not been any changes in the Company&#8217;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 fourth quarter of 2022 that have materially affected, or are reasonably likely to materially
affect, the Company&#8217;s internal control over financial reporting.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Management&#8217;s
Annual Report on Internal Control over Financial Reporting</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1.05pt; text-align: justify; text-indent: 35.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
management is responsible for establishing and maintaining adequate internal control over financial reporting (as defined in Rule 13a-15(f)
under the Exchange Act). Our management, including our Chief Executive Officer and Chief Financial Officer, conducted an evaluation of
the effectiveness of our internal control over financial reporting as of December 31, 2022. In making its evaluation, management used
the criteria set forth by the Committee of Sponsoring Organizations of the Treadway Commission (COSO) in Internal Control &#8211; Integrated
Framework (2013).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0pt; text-align: justify; text-indent: 35.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Based
on this evaluation, management determined that our internal control over financial reporting was effective as of December 31, 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">This
Annual Report does not include an attestation report by our independent registered public accounting firm regarding internal control
over financial reporting since we are a non-accelerated filer. Management&#8217;s report was not subject to attestation by our registered
public accounting firm pursuant to rules of the SEC that permit non-accelerated filers to provide only management&#8217;s report in the
10-K.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 57; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->57<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Inherent
Limitations on Effectiveness of Controls</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">Our
management, including our Chief Executive Officer and Chief Financial Officer, believes that our disclosure controls and procedures and
internal control over financial reporting are intended to be designed to provide reasonable assurance of achieving their objectives.
However, our management does not expect that our disclosure controls and procedures or our internal control over financial reporting
will prevent or detect all errors and all fraud. A control system, no matter how well conceived and operated, can provide only reasonable,
not absolute, assurance that the objectives of the control system are met. Further, the design of a control system must reflect the fact
that there are resource constraints, and the benefits of controls must be considered relative to their costs. Because of the inherent
limitations in all control systems, no evaluation of controls can provide absolute assurance that all control issues and instances of
fraud, if any, have been detected. These inherent limitations include the realities that judgments in decision making can be faulty,
and that breakdowns can occur because of a simple error or mistake. Additionally, controls can be circumvented by the individual acts
of some persons, by collusion of two or more people or by management override of the controls. The design of any system of controls also
is based in part upon certain assumptions about the likelihood of future events, and there can be no assurance that any design will succeed
in achieving its stated goals under all potential future conditions; over time, controls may become inadequate because of changes in
conditions, or the degree of compliance with policies or procedures may deteriorate. Because of the inherent limitations in a cost&#8211;effective
control system, misstatements due to error or fraud may occur and not be detected.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 2.1pt; text-align: justify; text-indent: 35.3pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_016"></span>ITEM
9B. OTHER INFORMATION</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">None.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_017"></span>ITEM
9C. DISCLOSURE REGARDING FOREIGN JURISDICTIONS THAT PREVENT INSPECTIONS.</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">None.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_018"></span>PART
III</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_019"></span>ITEM
10. DIRECTORS, EXECUTIVE OFFICERS AND CORPORATE GOVERNANCE.</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table sets forth the names, ages and positions of our executive officers and directors as of March 16, 2023. The following is information
on the business experience of each director and executive officer now serving and a discussion of the qualifications, attributes and
skills that led to the board of directors&#8217; conclusion that each one is qualified to serve as a director or as an executive officer
as the case may be. Executive officers serve at the discretion of the board of directors.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="border-bottom: Black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; white-space: nowrap; width: 28%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Name</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1.5pt; white-space: nowrap; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; white-space: nowrap; width: 8%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Age</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1.5pt; white-space: nowrap; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: Black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; white-space: nowrap; width: 60%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Position</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Dwight Egan</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">69</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief Executive Officer,
    President and Chairman of the Board</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Brian
    Brown</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">47</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief
    Financial Officer and Secretary</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Eugene Durenard</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">53</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">James Nelson</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">70</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Richard Serbin</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">78</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Ted
    Murphy</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">58</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following is a brief summary of the background of each of our directors:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Edward
Murphy</b> has been a member of our board of directors since June 2019. Since December 1999, Mr. Murphy has served as a senior
vice president and a partner of Dover Investments Ltd., a private investment firm. Throughout his career, Mr. Murphy&#8217;s duties
have included investment analysis of various types of investment projects in real estate and financial services. Currently, Mr.
Murphy serves on the board of directors of several Canadian publicly reporting companies that have interests in various industries.
He has been a Director at Empire Minerals Corporation Inc. since January 2016, at Digicrypts Blockchain Solutions Inc. from June
2011 to November 2022, at Lakefield Marketing Corporation since February 2018, CEO/CFO and Director of Credo Resources Inc. since
September 2019, at the Mosport Park Entertainment Corporation since April 30, 1997, at Essex Oil Ltd. Since July 2021, and at
Darkhorse Technologies Ltd. since November 2021. He served as a Director at Aurquest Resources from May 2003 to December 2017. Mr.
Murphy&#8217;s experience in the capital markets outside the United States and his involvement in investment analysis is a benefit
to the board of directors.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>


<!-- Field: Page; Sequence: 58; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->58<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Richard
Serbin </b>has been a member of our board of directors since May 2017. Mr. Serbin currently serves as a consultant to many companies
in the healthcare industry. He was the President of Corporate Development and In-House Legal Counsel at Life Science Institute, LLC,
from June 1, 2013 to July 15, 2014. He was appointed to the Advisory Board of Cure Pharmaceutical in January 2017 and has been a Member of Advisory Board at Prime Access,
Inc. since September 2015. Mr. Serbin has been a Director at Rapid Nutrition Plc since November 18, 2014. He served as Director at Viropro
Inc. from May 2013 to June 2014. He was Head of Business Advisory Board at Mazal Plant Pharmaceuticals Inc. from October 2006 to September
2007 and also served as its Member of Business Advisory Board. He served as Chief Executive Officer of Optigenex Inc. from July 2002
to September 15, 2005 and a director from July 2004 to September 2005. From January 1999 until July 2002 Mr. Serbin served as a consultant
to various pharmaceutical companies. He served as the President of Bradley Pharmaceuticals. He served as Vice President of Corporate
Development at Ortho Pharmaceuticals, a Johnson &amp; Johnson subsidiary, and practiced Patent and FDA law at Revlon Johnson &amp; Johnson
and Schering-Plough. He served as Patent Attorney for Schering Plough Corporation and Chief FDA Counsel for Revlon Corporation and Johnson
and Johnson Corporation. Subsequently, he worked at Revlon Corporation, as its Chief Food, Drug and Cosmetic Counsel. He founded Radius
Scientific Corporation. He was J&amp;J&#8217;s Vice President of Corporate Development, and later led a successful public offering venture
based on technology developed at Stanford Medical School. Mr. Serbin spent a large portion of his career focusing on international markets
and clients. While at J&amp;J, Mr. Serbin served on the board of directors of 16 US and international subsidiary companies, including
Ethicon, Ortho, J&amp;J Consumer Products, Pittman-Moore, Mc Neil, and J&amp;J Development Corporation. He worked on multiple international
acquisitions and strategic relationships, and sat on the board of directors of several of its international subsidiaries, including those
in India, Hong Kong, Japan, Taiwan, Germany, and England. Mr. Serbin has a B.S. and a B. Pharmacy from Rutgers University and Rutgers
University College of Pharmacy, a J.D. degree from Seton Hall Law School and a Master&#8217;s Degree in Trade Regulations and Law from
NYU Law School. Mr. Serbin&#8217;s experience in business, law and medicine and knowledge gained as an advisor to the healthcare industry
is critical to our board of directors as we continue to commercialize our products.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Dwight
Egan </b>serves as our President and Chief Executive Officer and has been an officer and director of the Company since April 2013. Mr.
Egan has been engaged in private investment business from February 1999 to the present. He was a senior executive at Data Broadcasting
Corporation, a leading provider of wireless, real-time financial market data, news and sophisticated fixed- income portfolio analytics
to 27,000 individual and professional investors from 1995 to 1999. He co-founded and served as CEO and Chairman of the Board of Broadcast
International, Inc. from 1984 to 1995, when Data Broadcasting Corporation acquired Broadcast International and created <i>CBS MarketWatch</i>,
a leading financial news site and participated in its initial public offering. Mr. Egan&#8217;s prior experience in executive leadership
positions with public companies and working with capital markets qualifies him to serve as our Chairman, President and Chief Executive
Officer.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Eugene
Durenard</b> has been a member of our board of directors since June 2019. Dr. Durenard is the Founder and CEO of Hyperbolic Holdings,
a Swiss-based holding, management consulting and strategy advisory company specialized in healthcare. Dr. Durenard brings investment
and entrepreneurial experience spanning 20 years. For the last 7 years he has been working with family offices on direct investments
and philanthropy focused on life sciences. He serves on the advisory board of several private companies in the biotech and MedTech sectors.
After an initial career in proprietary research and trading at Salomon Brothers and Credit Suisse in London, he co-founded Orion Investment
Management in Bermuda specializing in quantitative asset and liability management for institutions and private clients. He subsequently
sold it to Capital G Bank and co-headed their asset management. Dr. Durenard spent several years establishing personal connections with
representatives of 40+ clusters of life science innovation, families operating healthcare businesses and industry leaders globally. He
regularly visits labs and incubators, meets with leading scientists and innovators in order to keep abreast of current trends and developments.
His advice is based on a thorough analysis that combines in-depth knowledge of science, competitive forces and financial expertise. He
has published several articles in asset-liability management industry magazines as well as the book &#8220;Professional Automated Trading
&#8212; Theory and Practice&#8221; (Wiley 2013). He has a PhD in Mathematics from Harvard University. Dr. Durenard brings a thorough
multi-asset class investment and entrepreneurial experience spanning 25 years to the Company&#8217;s board of directors.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 59; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->59<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i></i></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"><b>James
Nelson</b></span> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">has been a member of our board of directors
since June 2019. Mr. Nelson <span style="background-color: white">is the retired Chairman and CEO of Sunworks, Inc., a NASDAQ traded
commercial, agriculture, and residential solar Integrator which he helped found in October 2010. Mr. Nelson spent most of his career
working in private equity as a general partner with Peterson Partners and with Millennial Capital Partners. In addition to his investment
and financial responsibilities, he served as CEO of two of his firms&#8217; portfolio companies. Prior to his years in private equity,
Mr. Nelson served as Vice President of Marketing at Banana Republic, where he managed company-wide marketing, as well as the company&#8217;s
international expansion initiative. He was also general manager for Banana Republic&#8217;s catalog division. He was Vice President of
Marketing and Corporate Development at Saga Corporation, a multi-billion-dollar food service company. Mr. Nelson began his executive
career over 35 years ago at Bain and Company, a business strategy consulting firm, where he managed teams of consultants on four continents.
Mr. Nelson received his MBA from Brigham Young University, where he graduated summa cum laude and was named the Outstanding Master of
Business Administration Graduate. Mr. Nelson&#8217;s advice to the board of directors from his experiences as a chief executive officer
and strategic advisor is useful to the board of directors.</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following is a brief summary of the background of each of our executive officers.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Dwight
Egan </b>- See narrative description above.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Brian
Brown </b>became our Chief Financial Officer in February 2021. From July 2020 until February 2021, Mr. Brown served as the Chief
Financial Officer of A-Core Concrete Cutting, Inc. where his duties included overseeing the company&#8217;s accounting and finance
departments, mergers and acquisitions and responsibility for financial forecasting and budgeting. From January 2020 to July 2020,
Mr. Brown was an independent consultant. From August 2019 to December 2019, Mr. Brown served as the Vice President of Accounting,
Treasury and Investor Relations at Sportsman&#8217;s Warehouse Holdings, Inc., a public company reporting on Nasdaq Global Select
under the symbol SPWH, where his duties included overseeing the company&#8217;s accounting, treasury and investor relations
departments, preparing the company&#8217;s annual, quarterly and current reports with the SEC, overseeing all aspects of the
company&#8217;s annual audit, including, but not limited to, the preparation and review of audit support schedules, preparation of
financial statements and footnotes, and providing support to the company&#8217;s independent auditors. From October 2009 to August
2019, Mr. Brown served as the Director of Finance of Sportsman&#8217;s Warehouse Holdings, Inc. where he assisted with the
company&#8217;s initial public offering in April 2014 as well as effecting private and secondary public offerings, acquisitions of a
group of retail stores and preparing the company&#8217;s periodic and current reports with the SEC and complying with the Sarbanes
Oxley Act. From May 2005 to October 2009, Mr. Brown served as the Corporate Controller of Franklin Covey Products where he developed
and maintained the company&#8217;s internal controls over financial reporting structure in accordance with the control standards
required under Section 404 of the Sarbanes Oxley Act. From July 2001 to May 2005, Mr. Brown served as an Assurance Senior at KPMG,
LLP where he provided audit services to various clients in multiple industries. Mr. Brown holds a Bachelor of Arts in Accounting and
Masters of Professional Accountancy from the University of Utah. Mr. Brown is a licensed CPA in Utah.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 60; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->60<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Involvement
in Certain Legal Proceedings</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">To
the best of our knowledge, none of our directors or executive officers has been involved in any bankruptcy or criminal proceedings (other
than traffic and other minor offenses) or been subject to any of the items set forth under Item 401(f) of Regulation S-K, nor have there
been any judgments or injunctions brought against any of our directors or executive officers during the last ten years that we consider
material to the evaluation of the ability and integrity of any director or executive officer.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Board
and Committee Matters</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
board of directors has five members. The Chairman of the Board and our Chief Executive Officer, Dwight Egan, is a member of the board
and is a full-time employee of the Company. Eugene Durenard, Edward Murphy, James Nelson and Richard Serbin are non-employee directors,
and the board has determined that these persons (who constitute a majority of the board) are &#8220;independent directors&#8221; under
the criteria set forth in Rule 5605(a)(2) of the Nasdaq Listing Rules. The board met eleven times during the year ended December 31,
2022. All directors attended more than seventy-five percent (75%) of the meetings of the board and committee meetings of which such director
was a member held during 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
maintain an audit committee of the board, a compensation committee of the board and a corporate governance/nominating committee of the
board, each of which is discussed below. Our board has determined that Messrs. Durenard, Nelson, Murphy and Serbin are &#8220;independent&#8221;
under the definition of independence in the Marketplace Rules of the NASDAQ listing requirements. Our board of directors may from time
to time establish other standing committees. In addition, from time to time, special committees may be established under the direction
of our board of directors when necessary to address specific issues.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table sets forth a description of the three permanent board committees and the chairpersons and members of those committees,
all of whom are independent directors:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Committee</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Independent
    Chairperson</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td colspan="5" style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Independent
    Members</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td colspan="5" style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 22%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Audit Committee</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 22%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Eugene Durenard</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 14%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Edward Murphy</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 17%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">James Nelson</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 17%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Richard S. Serbin</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Compensation Committee</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Richard S. Serbin</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Edward Murphy</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Eugene Durenard</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">James Nelson</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Governance Committee</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">James Nelson</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Edward Murphy</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Eugene Durenard</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Richard S. Serbin</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Nominating Committee</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Edward Murphy</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">James Nelson</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Eugene Durenard</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Richard S. Serbin</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Audit
Committee and Financial Expert</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
audit committee currently is comprised of Messrs. Durenard, Nelson, Murphy and Serbin with Mr. Durenard serving as chairperson of the
audit committee. The functions of the audit committee include engaging an independent registered public accounting firm to audit our
annual financial statements, reviewing the independence of our auditors, the financial statements and the auditors&#8217; report, and
reviewing management&#8217;s administration of our system of internal control over financial reporting and disclosure controls and procedures.
The board of directors has adopted a written audit committee charter. A current copy of the audit committee charter is available to security
holders on our website at www.codiagnostics.com. Our board has determined that all our directors that are serving on the audit committee
are &#8220;independent&#8221; under the definition of independence in the Marketplace Rules of the NASDAQ listing standards. The Audit
Committee met five times during the year ended December 31, 2022. All committee members attended more than seventy-five percent (75%)
of the meetings of the Audit Committee held during 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
board of directors has determined that Mr. Durenard meets the requirements of an &#8220;audit committee financial expert&#8221; as defined
in applicable SEC regulations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 61; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->61<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Compensation
Committee</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
compensation committee currently includes Messrs. Serbin, Nelson, Murphy and Durenard with Mr. Serbin serving as chairperson of the compensation
committee. The functions of the compensation committee include reviewing and approving corporate goals relevant to compensation for executive
officers, evaluating the effectiveness of our compensation practices, evaluating and approving the compensation of our chief executive
officer and other executives, recommending compensation for board members, and reviewing and making recommendations regarding incentive
compensation and other employee benefit plans. The board of directors has adopted a written compensation committee charter. A current
copy of the compensation committee charter is available to shareholders on our website at www.codiagnostics.com. Our board has determined
that all of our directors serving on the compensation committee are &#8220;independent&#8221; under the definition of independence in
the Marketplace Rules of the NASDAQ listing standards. The Compensation Committee did not meet as a separate committee in 2022, but rather,
because the committee is comprised of all four independent directors, committee matters were addressed as necessary in meetings of the
board. during the year ended December 31, 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Corporate
Governance Committee</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
Corporate Governance Committee currently includes Messrs. Nelson, Murphy, Durenard and Serbin with Mr. Nelson serving as chairperson
of the Corporate Governance Committee. Among other items, the committee is tasked by the board of directors to: develop and recommend
to the board the Corporate Governance Guidelines of the Company and oversee compliance therewith and evaluate and provide successor planning
for the Chief Executive Officer and other executive officers. A current copy of the Corporate Governance committee charter is available
to shareholders on our website at www.codiagnostics.com. Our board has determined all directors serving on the Corporate Governance committee
are &#8220;independent&#8221; under the definition of independence in the Marketplace Rules of the NASDAQ listing standards. The Corporate
Governance Committee did not meet as a separate committee in 2022, but rather, because the committee is comprised of all four independent
directors, committee matters were addressed as necessary in meetings of the board the year ended December 31, 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Nominating
Committee</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
Nominating Committee was split from the Corporate Governance Committee in 2022 and currently includes Messrs. Nelson, Murphy, Durenard
and Serbin with Mr. Murphy serving as chairperson of the Nominating Committee. The Nominating Committee has been established by the board,
among other things to: assist the board in effecting board organization, membership and function including identifying qualified board
nominees; assist the board in effecting the organization, membership and function of board committees including the composition of board
committees and recommending qualified candidates therefor; evaluate and provide successor planning for the Chief Executive Officer and
other executive officers; and develop criteria for board membership, such as independence, term limits, age limits and ability of former
employees to serve on the board and the evaluation of candidates&#8217; qualifications for nominations to the board and its committees
as well as removal therefrom. The Nominating Committee did not meet as a separate committee in 2022, but rather, because the committee
is comprised of all four independent directors, committee matters were addressed as necessary in meetings of the board for the year ended
December 31, 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Board
Nominations</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
considering board candidates, the board seeks individuals of proven judgment and competence who have strong reputations in their respective
fields. Although we do not have a formal diversity policy, the board considers such factors as experience, education, employment history,
special talents or personal attributes, anticipated participation in board activities, and geographic and diversity factors. The process
for identifying and evaluating nominees would include detailed consideration of the recommendations and opinions of members of our board,
our executive officers, and our stockholders. There would be no difference in the process of evaluation of candidates recommended by
a stockholder and those recommended by other sources.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 62; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->62<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
Amended and Restated Bylaws (the &#8220;Bylaws&#8221;) set forth procedures for shareholders to recommend nominees to the Company&#8217;s
board. Nominations of persons for election to the board of directors to be considered by the stockholders may be made at an annual meeting
of stockholders (i) pursuant to the Company&#8217;s notice of meeting, (ii) by or at the direction of the board of directors, or (iii)
by any stockholder of the Company who (A) was a stockholder of record at the time of giving of the notice, (B) is entitled to vote with
respect to such matter at the meeting, and (C) complies with the notice procedures set forth in the Bylaws.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following is a summary of key provisions from our Bylaws. For nominations to be properly brought before an annual meeting by a stockholder,
the stockholder making such nominations must have given timely notice in writing to the secretary of the Company. To be timely, a stockholder&#8217;s
notice shall be delivered to the secretary at the principal executive offices of the Company not later than the close of business on
the 75th day nor earlier than the close of business on the 125th day prior to the first anniversary of the preceding year&#8217;s annual
meeting; provided, however, that in the event that the date of the annual meeting is more than 30 days before or more than 60 days after
such anniversary date, notice by the stockholder to be timely must be so delivered not later than the close of business on the later
of (x) the 75th day prior to the scheduled date of such annual meeting or (y) the 15th day following the day on which public announcement
of the date of such meeting is first made by the Company. To be in proper form, a stockholder&#8217;s notice to the secretary must: set
forth, as to the stockholder giving the notice and the beneficial owner, if any, on whose behalf the nomination or proposal is made (A)
the name and address of such stockholder, as they appear on the Company&#8217;s books, and of such beneficial owner, if any, (B) the
class or series and number of shares of the Company that are, directly or indirectly, owned beneficially and of record by such stockholder
and such beneficial owner, if any, as of the date of such notice, and (C) any other information relating to such stockholder and beneficial
owner, if any, that would be required to be disclosed in a proxy statement or other filings required to be made in connection with solicitations
of proxies for, as applicable, the proposal and/or for the election of directors in a contested election pursuant to Section 14 of the
Securities Exchange Act of 1934, as amended, and the rules and regulations promulgated thereunder (the &#8220;Exchange Act&#8221;). In
addition, shareholders who intend to solicit proxies in support of director nominees other than the company&#8217;s nominees must also
comply with the additional requirements of Rule 14a-19(b).</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
notice shall set forth, as to each person, if any, whom the stockholder proposes to nominate for election or reelection as a director
(A) all information relating to such person that would be required to be disclosed in a proxy statement or other filings required to
be made in connection with solicitations of proxies for election of directors in a contested election pursuant to Section 14 of the Exchange
Act (including such person&#8217;s written consent to being named in the proxy statement as a nominee and to serving as a director if
elected) and (B) a description of all direct and indirect compensation and other monetary agreements, arrangements and understandings
during the past three years, and any other relationships, between or among such stockholder and beneficial owner, if any, and their respective
affiliates and associates, or others acting in concert therewith, on the one hand, and each proposed nominee, and his or her respective
affiliates and associates, or others acting in concert therewith, on the other hand, including, without limitation all information that
would be required to be disclosed pursuant to Rule 404 promulgated under Regulation S-K if the stockholder making the nomination and
any beneficial owner on whose behalf the nomination is made, if any, or any affiliate or associate thereof or person acting in concert
therewith, were the &#8220;registrant&#8221; for purposes of such rule and the nominee were a director or executive officer of such registrant;
and with respect to each nominee for election or reelection to the board of directors, include the completed and signed questionnaire,
representation, and agreement required by the Bylaws. The Company may require any proposed nominee to furnish such other information
as may reasonably be required by the Company to determine the eligibility of such proposed nominee to serve as an independent director
of the Company or that could be material to a reasonable stockholder&#8217;s understanding of the independence, or lack thereof, of such
nominee.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Communication
with the Board</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have not, to date, developed a formal process for shareholder communications with the board of directors. We believe our current informal
process, in which any communication sent to the board of directors, either generally or in care of the chief executive officer, secretary
or other corporate officer or director, is forwarded to all members of the board of directors, has served the board&#8217;s and the shareholders&#8217;
needs.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 63; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->63<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Conflicts
of Interests</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
an annual basis, each director and executive officer is obligated to complete a director and officer questionnaire that requires disclosure
of any transactions with our company, including related person transactions reportable under SEC rules, in which the director or executive
officer, or any member of his or her immediate family, have a direct or indirect material interest. Under our company&#8217;s standards
of conduct for employees, all employees, including the executive officers, are expected to avoid conflicts of interest. Pursuant to our
code of ethics for the chief executive officer and senior finance officers (as discussed below), such officers are prohibited from engaging
in any conflict of interest unless a specific exception has been granted by the board. All of our directors are subject to general fiduciary
standards to act in the best interests of our company and our shareholders. Conflicts of interest involving an executive officer or a
director are generally resolved by the board.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Role
of the Board in Risk Oversight</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Risk
is inherent with every business, and how well a business manages risk can ultimately determine its success. Management is responsible
for the day-to-day management of the risks that we face, while our board of directors, as a whole and through its committees, has responsibility
for the oversight of risk management. In its risk oversight role, our board of directors is responsible for satisfying itself that the
risk management processes designed and implemented by management are adequate and functioning as designed.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
board of directors does not have a standing risk management committee, but rather administers this oversight function directly through
our board of directors as a whole, as well as through various standing committees of the board of directors that address risks inherent
in their respective areas of oversight. In particular, our board of directors is responsible for monitoring and assessing strategic risk
exposure, including a determination of the nature and level of risk appropriate for us. Our Audit Committee has the responsibility to
consider and discuss our major financial risk exposures and the steps our management has taken to monitor and control these exposures,
including guidelines and policies to govern the process by which risk assessment and management is undertaken. The Audit Committee also
monitors oversight of the performance of our internal audit function. Our Corporate Governance/Nominating Committee monitors the effectiveness
of our corporate governance guidelines, including whether they are successful in preventing illegal or improper liability-creating conduct.
Our Compensation Committee assesses and monitors whether any of our compensation policies and programs have the potential to encourage
excessive risk-taking or promote behaviors contra to our Code of Business Conduct.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Code
of Ethics</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
have adopted a code of ethics for our principal executive officer, principal financial officer, controller, or persons performing similar
functions. A copy of the code of ethics is included on our website at www.codiagnostics.com.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Family
Relationships</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">There
are no family relationships among our directors and executive officers.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_020"></span>ITEM
11. EXECUTIVE COMPENSATION</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
are a &#8220;smaller reporting company&#8221; as defined in the rules and regulations of the SEC. As a smaller reporting company, we
may take advantage of specified reduced disclosure and other requirements that are otherwise applicable, in general, to public companies
that are not smaller reporting companies. Accordingly, this Report includes reduced disclosure about our executive compensation arrangements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Summary
Compensation Table</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; background-color: white"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
table below summarizes the total compensation paid or earned by each of the named executive officers in their respective capacities for
the fiscal years ended December 31, 2022 and 2021. We have omitted in this report certain columns otherwise required to be included because
there was no compensation made with respect to such columns, as permitted by applicable SEC regulations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 64; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->64<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold">Name and Principal Position</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Year</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Salary</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Bonus (1)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Stock</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Awards (2)</b></span></p></td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>All Other </b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Comp (3)</b></span></p></td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Total</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Compensation</b></span></p></td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 40%; text-align: left">Dwight Egan</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 6%; text-align: center">2022</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 6%; text-align: right">366,146</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 6%; text-align: right">146,245</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 6%; text-align: right">1,454,750</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 6%; text-align: right">-</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 6%; text-align: right">1,967,141</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">President &amp; Chief Executive Officer</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: center">2021</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">350,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">638,459</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1,208,750</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">26,793</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">2,224,002</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Brian Brown</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: center">2022</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">280,875</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">106,647</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1,190,250</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1,577,772</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Chief Financial Officer and Secretary</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: center">2021</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">209,731</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">475,014</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1,441,600</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">26,793</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">2,153,138</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Bonuses for the year ended
    December 31, 2021 include accrued bonus payments of $281,597 to Mr. Egan and $223,248 to Mr. Brown that were paid in February 2022.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(2)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The amounts reported in
    this column represent the aggregate grant date fair value of the restricted stock units, or RSUs, granted under our 2015 Plan as
    computed in accordance with FASB ASC Topic 718. Note that the amounts reported in this column reflect the accounting value for these
    equity awards and do not correspond to the actual economic value that may be received from the equity awards as the RSUs vest over
    three years.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(3)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Company profit sharing
    payments to the Company&#8217;s 401 K Plan.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Narrative
Disclosure to Summary Compensation Table:</i> We do not have written employment agreements with any of our executive officers. All of
our executive officers serve on an at-will basis. The base salaries for our named executive officers were determined by our compensation
committee after reviewing a number of factors, including: the responsibilities associated with the position, the seniority of the executive&#8217;s
position, the base salary level in prior years, and our financial position; and for executive officers other than our Chief Executive
Officer, recommendations made by our Chief Executive Officer. By utilizing a combination of objective and subjective performance factors
critical to our success, the board will award cash bonuses intended to incentivize our executive officers to achieve results that benefit
them and the Company. Performance factors include the achievement of predetermined financial performance objectives, adherence to financial
discipline measures and achievement of business development, product development and long-term business stability. The board may modify
or re-weight the objectives during the course of the fiscal year, if necessary, to reflect changes in our business plan.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 65; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->65<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Outstanding
Equity Awards at Fiscal Year-End 2022</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table contains certain information concerning outstanding equity awards for the Named Executive Officers as of December 31,
2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="text-align: center">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="14" style="border-bottom: Black 1.5pt solid; text-align: center">Option Awards</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="14" style="border-bottom: Black 1.5pt solid; text-align: center">Stock Awards</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1.5pt; text-align: center">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; text-align: center">Number of Securities <br />Underlying Unexercised <br />Options (#)</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1.5pt; text-align: center">Option <br />Exercise </td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1.5pt; text-align: center">Option <br />Expiration</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1.5pt; text-align: center">Number of Shares or Units of Stock That Have Not
    Vested</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1.5pt; text-align: center">Market Value of Shares or Units of Stock That Have Not
    Vested</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1.5pt; text-align: center">Number of Unearned Shares, Units or Other Rights That
    Have Not</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="padding-bottom: 1.5pt; text-align: center">Market or Payout Value of Unearned Shares, Units or
    Other Rights That Have Not</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; text-align: center">Name</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Exercisable</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Unexercisable</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Price</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">Date</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"> (#)</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"> ($) (1)</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"> Vested (#)</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"> Vested ($)</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 28%; text-align: left">Dwight Egan</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">50,000</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">-</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 5%; text-align: right">2.63</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 5%; text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">09/20/28</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">-</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">-</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">&#160;&#160;-</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 5%; text-align: right">&#160;&#160;-</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">50,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1.10</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">09/02/29</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">25,000</td><td style="text-align: left">(2)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">63,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">62,500</td><td style="text-align: left">(4)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">157,500</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">229,167</td><td style="text-align: left">(5)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">577,501</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Brian Brown</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">10,000</td><td style="text-align: left">(3)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">25,200</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">50,000</td><td style="text-align: left">(4)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">126,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">187,500</td><td style="text-align: left">(5)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">472,500</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  </table>
<p style="margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(1)
    </span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Based
    on $2.52 per share, which was the closing price of our common stock on December 31, 2022.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(2)
    </span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Consists
    of restricted stock units granted on 11/23/2020, which vest in 6 installments commencing on 5/23/2021 and continuing every six months
    thereafter.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(3)
    </span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Consists
    of restricted stock units granted on 2/22/2021, which vest in 6 installments commencing on 5/23/2021 and continuing every six months
    thereafter.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(4)
    </span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Consists
    of restricted stock units granted on 8/12/2021, which vest in 6 installments commencing on 11/23/2021 and continuing every six months
    thereafter.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(5)
    </span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Consists
    of restricted stock units granted on 6/6/2022, which vest in 6 installments commencing on 11/23/2022 and continuing every six months
    thereafter.</span></td></tr>
  </table>
<p style="margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Potential
Payments Upon Termination or Change of Control</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">There
is no compensation payable to the named executive officers upon voluntary termination, retirement, involuntary not-for-cause termination,
termination following a change of control or in the event of disability or death of the executive.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Director
Compensation</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
use a combination of cash and stock-based incentive compensation to attract and retain qualified candidates to serve on its board of
directors. In setting director compensation, we consider the significant amount of time that directors expend in fulfilling their duties
as well as the skill level required by our members of the board.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 66; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->66<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
table below summarizes the compensation paid or accrued by us to each of our non-employee directors for the fiscal year ended December
31, 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold">Name</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Fees Earned or</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Paid in Cash</b></span></p></td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Stock Awards:</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Value of Restricted</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Stock Units (1)</b></span></p></td><td style="padding-bottom: 1.5pt">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 52%; text-align: left">Richard Serbin (2)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">87,500</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">429,100</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">516,600</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">James Nelson (3)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">87,500</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">429,100</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">516,600</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Edward Murphy (4)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">87,500</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">429,100</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">516,600</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Eugene Durenard (5)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">87,500</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">429,100</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">516,600</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The amounts reported in
    this column represent the aggregate grant date fair value of the restricted stock units, or RSUs, granted under our 2015 Plan as
    computed in accordance with FASB ASC Topic 718. Note that the amounts reported in this column reflect the accounting value for these
    equity awards and do not correspond to the actual economic value that may be received from the equity awards. The RSUs vested immediately
    upon grant.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(2)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As of December 31, 2022,
    Mr. Serbin had 70,833 RSU awards outstanding.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(3)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As of December 31, 2022,
    Mr. Nelson had 70,833 RSU awards outstanding.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(4)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As of December 31, 2022,
    Mr. Murphy had 70,833 RSU awards outstanding.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(5)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As of December 31, 2022,
    Mr. Durenard had 70,833 RSU awards outstanding.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in; text-align: justify; text-indent: -0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
non-employee directors receive cash compensation of $100,000 per year, paid quarterly. In 2021, the non-employee directors also each
received 37,500 RSU&#8217;s vesting 1/3<sup>rd</sup> equally in January 2021, 2022, and 2023. In 2022, they also received 70,000
RSU&#8217;s vesting 1/6<sup>th </sup>equally in November 2022, 2023, and 2024 and May 2023, 2024, and 2025. In addition,
non-employee directors may be entitled to receive special awards of stock options or RSUs from time to time as determined by the
board. The chairman of the board and the chairperson of each of the audit, corporate governance/nomination, and compensation
committees receive no additional fees for serving in such capacities. There is no additional compensation for meeting attendance.
Directors who are employees of the Company receive no additional compensation for serving as directors. All stock options granted to
outside directors are immediately exercisable and expire ten years from the date of grant or 30 days after the date they cease to be
directors. Directors are reimbursed for ordinary expenses incurred in connection with attending board and committee
meetings.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

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


<!-- Field: Page; Sequence: 67; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->67<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Equity
Incentive Plans</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Under
our Amended and Restated 2015 Long-term Incentive Plan (the &#8220;2015 Plan&#8221;), the board of directors may issue incentive stock-based
awards to employees, directors and consultants of the company. Options awarded generally expire ten years after being granted. Any stock-based
awards granted vest in accordance with the vesting schedule determined by the board of directors. Should an employee&#8217;s director&#8217;s
or consultant&#8217;s relationship with the company terminate before the vesting period is completed, the unvested portion of each grant
is forfeited. We continue to maintain and grant awards under the 2015 Plan which will remain in effect until its expiration by its terms.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
purpose of our incentive plan is to advance the interests of our stockholders by enhancing our ability to attract, retain and motivate
persons who are expected to make important contributions to the company by providing them with both equity ownership opportunities and
performance-based incentives intended to align their interests with those of our stockholders. These plans are designed to provide us
with flexibility to select from among various equity-based compensation methods, and to be able to address changing accounting and tax
rules and corporate governance practices by optimally utilizing stock-based awards.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_021"></span>ITEM
12. SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT AND RELATED STOCKHOLDER MATTERS</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table sets forth certain information, as of March 14, 2023, with respect to the holdings of (1) each person who is the beneficial
owner of more than 5% of our Common Stock, (2) each of our directors, (3) each named executive officer, and (4) all of our current directors
and executive officers as a group.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Beneficial
ownership of the common stock is determined in accordance with the rules of the Securities and Exchange Commission and includes any shares
of common stock over which a person exercises sole or shared voting or investment power, or of which a person has a right to acquire
ownership at any time within 60 days of March 14, 2023. Applicable percentage ownership in the following table is based on 30,922,607
shares of common stock plus, for each individual, any securities that individual has the right to acquire within 60 days of March 14,
2023.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
information in the table below is based on information known to us or ascertained by us from public filings made by the stockholders.
Except as otherwise indicated in the table below, addresses of the director, executive officers and named beneficial owners are in care
of Co-Diagnostics, Inc., 2401 S. Foothill Drive, Suite D, Salt Lake City, Utah 84109.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Number of Shares Beneficially Owned</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Percentage</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>of Class (1)</b></span></p></td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; padding-left: 0pt">5% Stockholders</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 64%; text-align: left; text-indent: 10pt; padding-left: 0pt">Vanguard Group (1)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">1,781,283</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">5.8</td><td style="width: 1%; text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold; text-align: left; padding-left: 0pt">Named Executive Officers and Directors</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: left">&#160;</td><td style="font-weight: bold; text-align: right">&#160;</td><td style="font-weight: bold; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Dwight Egan (2)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">193,197</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">*</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Brian Brown</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">73,236</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">*</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Edward Murphy (3)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">99,167</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">*</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Eugene Durenard</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">36,667</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">*</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">James Nelson (4)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">86,667</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">*</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Richard Serbin (5)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">59,612</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">*</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="font-weight: bold; text-align: left; padding-left: 0pt">All Directors and Executive Officers as a Group (6 persons)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">548,546</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1.7</td><td style="text-align: left">%</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">*Represents
beneficial ownership of less than 1%.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Information obtained from
    Schedule 13G/A filed with the SEC on February 9, 2023. Vanguard Group has an address of 100 Vanguard Blvd, Malvern, PA, 19355.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(2)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Includes exercisable options
    to acquire 100,000 shares of common stock.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(3)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Includes exercisable options
    to acquire 50,000 shares of common stock.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(4)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Includes exercisable options
    to acquire 50,000 shares of common stock.</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(5)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Includes exercisable options
    to acquire 20,445 shares of common stock.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Equity
Compensation Plan Information</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="margin: 0pt 0"></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; text-align: center">Plan Category</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">(a) Number of Shares to be Issued upon Exercise of Outstanding Options and Rights</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">(b) Weighted-average Exercise Price of Outstanding Options and Rights</td><td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center">(c) Number of Securities Remaining Available for Future Issuance Under Equity Compensation Plans (Excluding Securities Referenced in Column (a))</td><td style="padding-bottom: 1.5pt">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 52%; text-align: left">Equity compensation plans approved by stockholders</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">3,467,297</td><td style="width: 1%; text-align: left">(1)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 12%; text-align: right">2.19</td><td style="width: 1%; text-align: left">(2)</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 12%; text-align: right">6,210,790</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Equity compensation plans not approved by stockholders</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">3,467,297</td><td style="padding-bottom: 2.5pt; text-align: left">(1)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2.19</td><td style="padding-bottom: 2.5pt; text-align: left">(2)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">6,210,790</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; width: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Includes options and restricted
    stock units outstanding under our 2015 Equity Incentive Plan. </span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; white-space: nowrap; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(2)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Represents weighted-average
    exercise price per share of common stock acquirable upon exercise of outstanding stock options.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 68; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->68<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_022"></span>ITEM
13. CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS, AND DIRECTOR INDEPENDENCE</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company employs two persons who are related to current or former executive officers. Seth Egan is the Company&#8217;s Director of Sales
and Marketing, and is the son of Dwight Egan, the Company&#8217;s President and Chief Executive Officer. Andrew Benson is the Company&#8217;s
Director of Investor Relations, and is the son of Reed Benson, the Company&#8217;s former Chief Financial Officer and Secretary. During
the year ended December 31, 2022, the total compensation paid to or earned by these persons, including salaries, bonuses, and the grant
date fair value of equity awards which vest over three years, was $962,800 and $489,000, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><b>Policy for Review of Related Party Transactions</b></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The review of transactions with related persons policy
is set forth in our Corporate Governance Committee Charter. The Corporate Governance Committee is to oversee the administration of any
related party transactions policy in effect with respect to transactions in which the Company is a participant and involving directors,
nominees for director, executive officers of the Company or holders of more than 5% of the Company&#8217;s common stock or immediate
family members of any such person.</p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; background-color: white"><b>Director Independence</b></p>

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

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">For information regarding the independence of our directors, see &#8220;Directors,
Executive Officers and Corporate Governance&#8221; in Part III, Item 10 of this Form 10-K.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_023"></span>ITEM
14. PRINCIPAL ACCOUNTANT FEES AND SERVICES</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table presents aggregate fees for professional services rendered by our independent auditors for the respective periods.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Years Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Audit fees</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">136,600</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">113,100</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Audit related fees</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Other consulting fees</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Tax fees</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; text-indent: 10pt">Total fees</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">136,600</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">113,100</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Audit
fees consist of fees for professional services provided in connection with the audit of our annual consolidated financial statements,
review of our quarterly consolidated financial statements and our offerings.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify; text-indent: 33.75pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
audit committee has adopted a policy that requires advance approval of all services performed by the independent auditor when fees are
expected to exceed $15,000. The audit committee has delegated to the audit committee chairperson, Mr. Durenard, the authority to approve
services, subject to ratification by the audit committee at its next committee meeting. All fees incurred were pre-approved by the audit
committee.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 69; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->69<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_024"></span>PART
IV</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="ak_025"></span>Item
15. Exhibits, Financial Statement Schedules.</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(a)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The following documents are filed as part of this Annual
    Report on Form 10-K:</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Financial Statements.
    </i>The Consolidated Financial Statements filed as part of this Annual Report on Form 10-K are included in Part II, Item 8 of this
    Annual Report on Form 10-K. </span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(2)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Financial statement
    schedules.</i> There are no financial statements schedules included because they are either not applicable or the required information
    is shown in the consolidated financial statements or the notes thereto. </span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(3)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Exhibits. The exhibits
    required by Item 601 of Regulation S-K and Item 15(b) of this Annual Report are listed in the Exhibit Index below. The exhibits listed
    in the Exhibit Index are incorporated by reference herein.</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 0.7in"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Exhibit</b></span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Number</b></span></p></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.1in; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Exhibit
    Description</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.1in; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 0.6in"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Filed
    with this</b></span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Report</b></span></p></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.1in; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 0.75in"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Incorporated
    by</b></span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Reference
    herein from Form or Schedule</b></span></p></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.1in; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 0.6in; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Filing
    Date</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.1in; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 0.65in"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>SEC
    File/Reg.</b></span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Number</b></span></p></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.1*+</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315221032360/ex2-1.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Agreement and Plan of Merger by and between Co-Diagnostics, Inc, IDMO Acquisition Corp., Idaho Molecular Inc., and Company Representative dated as of December 21, 2021.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form 8-K (Exhibit 2.1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12/23/21</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">001-38148</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.1.2</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315222016975/ex2-2.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amendment to Agreement and Plan of Merger by and among Co-Diagnostics, Inc., Idaho Molecular, Inc., and Kirk Ririe, as Company Representative</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form 8-K (Exhibit 2.2)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">06/16/22</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">001-38148</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.2*+</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; background-color: white"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315221032360/ex2-2.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Agreement and Plan of Merger by and between Co-Diagnostics, Inc, ACI Acquisition Corp., Advanced Conceptions, Inc., and Company Representative dated as of December 21, 2021</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form 8-K (Exhibit 2.2)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">12/23/21</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">001-38148</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.2.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315222016975/ex2-1.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amendment to Agreement and Plan of Merger by and among Co-Diagnostics, Inc., Advanced Conceptions, Inc., and Richard Abbott, as Company Representative</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form 8-K (Exhibit 2.1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">06/16/22</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">001-38148</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;3.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000147793217000164/filename2.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;Articles of Incorporation</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Draft Registration Statement
    (Exhibit 3.1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">01/12/17</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;377-01467</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.1.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000147793217000164/filename3.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amendment to the Articles of Incorporation</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Draft Registration Statement
    (Exhibit 3.1.1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">01/12/17</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">377-01467</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.1.2</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315219000111/ex3-2.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Articles of Amendment to Articles of Incorporation</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form 8-K (Exhibit 3.2)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">01/03/19</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">001-38148</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.1.3</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315222007662/ex3-1_3.htm" style="-sec-extract: exhibit">Articles of Amendment</a></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form 10-K (Exhibit 3.1.3)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">03/24/22</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">001-38148</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">3.1.3</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">Articles of Amendment</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center">X</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif">&#160;</td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">&#160;</td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.2</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315222008865/ex3-1.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">Amended and Restated Bylaws of Co-Diagnostics, Inc.</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form 8-K (Exhibit 3.1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">04/01/22</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">001-38148</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">4.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Description of Registrant&#8217;s securities</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">X</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">10.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000147793217000164/filename7.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Exclusive Agreement between Co-Diagnostics, Inc. and DNA Logix, Inc., dated April 18, 2014</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Draft Registration Statement
    (Exhibit 10.2)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">01/12/17</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">377-01467</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">10.2<sup>#</sup></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315220022110/ex4-1.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Co-Diagnostics, Inc. Amended and Restated 2015 Long Term Incentive Plan</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form S-8/A </span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">11/20/20</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">333-237684</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">10.3</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000147793217002536/codx_ex10138.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form of Indemnification Agreement</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form S-1/A (Exhibit 10.13.8)
    </span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">05/24/17</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">333-217542</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">10.4</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000147793217002006/axdx_ex1016.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Shareholders&#8217; Agreement between Co-Diagnostics and Synbiotics Limited, dated January 27, 2017</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form S-1 (Exhibit 10.16)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">04/28/17</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">333-217542</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">10.5</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000147793217002006/axdx_ex1017.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amended Exclusive License Agreement between Co-Diagnostics, Brent Satterfield, and DNA Logix, Inc., dated January 1, 2017</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form S-1 (Exhibit 10.17)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">04/28/17</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">333-217542</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">10.6</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315222007662/ex10-6.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Warrant Agreement between Co-Diagnostics, Inc and VStock Transfer, LLC. Dated December 31, 2021 (ACI Warrant)</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form 10-K (Exhibit 10.6)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">03/24/22</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">001-38148</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 70; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->70<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 0.7in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">10.7</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315222007662/ex10-7.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Warrant Agreement between Co-Diagnostics, Inc and VStock Transfer, LLC. Dated December 31, 2021 (IDMO Warrant)</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.6in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 0.75in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form 10-K (Exhibit
    10.7)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 0.6in; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">03/24/22</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 0.1in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 0.65in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">001-38148</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">10.8</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315220003091/ex10-1.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form of Securities Purchase Agreement, dated February 27, 2020</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form 8-K (Exhibit 10.1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">02/27/20</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">001-38148</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">10.9</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315222007662/ex10-9.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Lease Agreement 2401 Foothill Drive</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;Form 10-K (Exhibit
    10.9)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">03/24/22</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">001-38148</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">10.9.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315222007662/ex10-9_1.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amendment #1 to Lease</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form 10-K (Exhibit 10.9.1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">03/24/22</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">001-38148</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">10.9.2</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315222007662/ex10-9_2.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Amendment #2 to Lease</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;Form 10-K (Exhibit
    10.9.2)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">03/24/22</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">001-38148</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">14.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="https://www.sec.gov/Archives/edgar/data/1692415/000149315220005305/ex14-1.htm" style="-sec-extract: exhibit"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Code of Ethics for Senior Financial Officers</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Form 10-K (Exhibit 14.1)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">03/30/20</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">001-38148</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">21.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="ex21-1.htm"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Subsidiaries of Registrant</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">X</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">23.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="ex23-1.htm"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Consent of Haynie &amp; Company</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">X</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">31.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="ex31-1.htm"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Certification of Chief Executive Officer pursuant to section 302 of the Sarbanes-Oxley Act of 2002</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">X</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">31.2</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="ex31-2.htm"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Certification of Principal Financial Officer pursuant to section 302 of the Sarbanes-Oxley Act of 2002</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">X</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">32.1</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="ex32-1.htm"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Certification of Chief Executive Officer pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">X</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">32.2</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><a href="ex32-2.htm"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Certification of Principal Financial Officer pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002</span></a></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">X</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">101 SCH</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inline XBRL Taxonomy Extension
    Schema Document (A)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">X</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">101.CAL</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inline XBRL Taxonomy Extension
    Calculation Linkbase Document (A)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">X</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">101.DEF</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inline XBRL Taxonomy Extension
    Definition Linkbase Document (A)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">X</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">101.LAB</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inline XBRL Taxonomy Extension
    Label Linkbase Document (A)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">X</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">101.PRE</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inline XBRL Taxonomy Extension
    Presentation Linkbase Document (A)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">X</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">104</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cover Page Interactive
    Data File (formatted as Inline XBRL and contained in Exhibit 101)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">X</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(A)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; text-transform: uppercase">iXBRL
    (INline Extensible Business Reporting Language)</span> <span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">information
    is furnished and not filed for purposes of Section 11 and 12 of the Securities Act of 1933 and Section 18 of the Securities Exchange
    Act of 1934.</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">X</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; vertical-align: top"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><sup>#</sup>Management
Contract or Compensatory Plan or Arrangement</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">*Schedules
and exhibits to these Exhibits have been omitted pursuant to Item 601(b)(2) of Regulation S-K. The Company agrees to furnish supplementally
a copy of any omitted schedule or exhibit to the SEC upon request.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.25in; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">+
Portions of Exhibit 2.1 and Exhibit 2.2 have been omitted as they contain information that (i) is not material and (ii) is the type of
information the issuer both customarily and actually treats as private and confidential.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><b>Item 16. Form 10-K Summary.</b></p>

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 71; Value: 2 -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->71<!-- Field: /Sequence --></td></tr></table></div>
    <div style="break-before: page; margin-top: 6pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

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

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

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Pursuant
to the requirements of Section 13 or 15(d) 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.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td colspan="2" style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>CO-DIAGNOSTICS,
    INC.</b></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; width: 50%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 3%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 47%; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Date: March 16, 2023</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">By: </span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/
    Dwight Egan</i></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Dwight Egan</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief
    Executive Officer, President and Director</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Principal
    Executive Officer)</span></p></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">By:</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/
    Brian Brown</i></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Brian
    Brown</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief
    Financial Officer</span></p>
    <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Principal
    Financial and Accounting Officer</span></p></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Pursuant
to the requirements of the Securities Exchange Act of 1934, this report has been signed below by the following persons on behalf of the
registrant and in the capacities and on the date indicated.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 30%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Signature</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 40%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Title</b></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; width: 2%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif; width: 26%; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Date</b></span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/ Dwight
    Egan</i></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief Executive Officer,
    President and Director</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">March 16, 2023</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Dwight Egan</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Principal Executive Officer)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/ Brian
    Brown</i></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief Financial Officer</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">March 16, 2023</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Brian Brown</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">(Principal Financial and
    Accounting Officer)</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/ Eugene
    Durenard</i></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">March 16, 2023</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Eugene Durenard</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/ Edward
    Murphy</i></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">March 16, 2023</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Edward Murphy</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/ James
    Nelson</i></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">March 16, 2023</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">James Nelson</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="border-bottom: black 1.5pt solid; font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>/s/ Richard
    Serbin</i></span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Director</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">March 16, 2023</span></td></tr>
  <tr style="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Richard Serbin</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td>
    <td style="font: 10pt Times New Roman, Times, Serif; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></td></tr>
  </table>
<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>


<!-- Field: Page; Sequence: 72; Options: Last -->
    <div style="border-bottom: Black 1.5pt solid; margin-bottom: 6pt"><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font-size: 10pt"><tr style="vertical-align: top; text-align: left"><td style="width: 100%; text-align: center"><!-- Field: Sequence; Type: Arabic; Name: PageNo -->72<!-- Field: /Sequence --></td></tr></table></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"></span></p>
</body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-21.1
<SEQUENCE>2
<FILENAME>ex21-1.htm
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Exhibit
21.1</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>&nbsp;</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">List
of Subsidiaries</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>LIST
OF SUBSIDIARIES</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Co-Diagnostics,
Inc. (the &ldquo;Company&rdquo;) has the following direct and indirect subsidiaries:</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; border-bottom: black 1.5pt solid; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Subsidiary
    Name</B></FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1.5pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>&nbsp;</B></FONT></TD>
    <TD COLSPAN="2" STYLE="font: 10pt Times New Roman, Times, Serif; border-bottom: black 1.5pt solid; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Jurisdiction
    of Formation</B></FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1.5pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>&nbsp;</B></FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1.5pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>&nbsp;</B></FONT></TD>
    <TD COLSPAN="2" STYLE="font: 10pt Times New Roman, Times, Serif; border-bottom: black 1.5pt solid; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>Percentage
    of Ownership</B></FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; padding-bottom: 1.5pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>&nbsp;</B></FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD COLSPAN="2" STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD COLSPAN="2" STYLE="font: 10pt Times New Roman, Times, Serif; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 64%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">DNA Logix,
    Inc.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 2%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 1%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 14%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Utah</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 1%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 2%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 1%; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 14%; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">100</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 1%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">%</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: White">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Idaho Molecular, Inc.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Idaho</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">100</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">%</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: White">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; background-color: rgb(204,238,255)">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Advanced Conceptions, Inc.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Utah</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">100</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">%</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>


<!-- Field: Page; Sequence: 1; Options: Last -->
    <DIV STYLE="margin-bottom: 6pt; border-bottom: Black 1.5pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 100%">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="text-align: center; font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>3
<FILENAME>ex23-1.htm
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>EXHIBIT
23.1</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>CONSENT
OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</B>&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
consent to the incorporation by reference in Registration Statements No. 333-226835 and 333-249651 on Form S-3 and 333-237684 and 333-269350
Form S-8 of Co-Diagnostics, Inc. of our report dated March 16, 2023, relating to our audits of the consolidated financial statements
which appear in this Annual Report on Form 10-K of Co-Diagnostics, Inc. for the years ended December 31, 2022 and 2021.</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">/s/
Haynie &amp; Company</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Salt
Lake City, Utah</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">March
16, 2023</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>


<!-- Field: Page; Sequence: 1; Options: Last -->
    <DIV STYLE="margin-bottom: 6pt; border-bottom: Black 1.5pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 100%">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>&nbsp;</B></FONT></P>


</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>4
<FILENAME>ex31-1.htm
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>EXHIBIT
31.1</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>CERTIFICATION
PURSUANT TO SECTION 302 OF THE SARBANES OXLEY ACT OF 2002</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>AND
RULE 13A-14 OF THE EXCHANGE ACT OF 1934</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B><U>CERTIFICATION</U></B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">I,
Dwight Egan, certify that:</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">1.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">I have reviewed this annual
    report on Form 10-K of Co-Diagnostics, Inc.;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">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;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">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;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">4.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The registrant&rsquo;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
    &ndash; 15(f) and 15d &ndash; 15(f)) for the registrant and have:</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">a)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">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;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">b)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">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;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">c)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Evaluated the effectiveness
    of the registrant&rsquo;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</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">d)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Disclosed in this report
    any change in the registrant&rsquo;s internal control over financial reporting that occurred during the registrant&rsquo;s most recent
    fiscal quarter (the registrant&rsquo;s fourth fiscal quarter in the case of the annual report) that has materially affected, or is
    reasonably likely to materially affect, the registrant&rsquo;s internal control over financial reporting; and</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">5.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The registrant&rsquo;s
    other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting,
    to the registrant&rsquo;s auditors and the audit committee of the registrant&rsquo;s board of directors (or persons performing the
    equivalent functions):</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">a)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">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&rsquo;s ability to record, process, summarize and report financial information; and</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">b)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Any fraud, whether or not
    material, that involves management or other employees who have a significant role in the registrant&rsquo;s internal control over
    financial reporting.</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 50%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Date:
    March 16, 2023</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 50%; border-bottom: black 1.5pt solid; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><I>/s/
    Dwight Egan</I></FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Dwight
    Egan</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief Executive Officer,
    President and Principal Executive Officer</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>


<!-- Field: Page; Sequence: 1; Options: Last -->
    <DIV STYLE="margin-bottom: 6pt; border-bottom: Black 1.5pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 100%">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>&nbsp;</B></FONT></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>5
<FILENAME>ex31-2.htm
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>EXHIBIT
31.2</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>CERTIFICATION
PURSUANT TO SECTION 302 OF THE SARBANES OXLEY ACT OF 2002</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>AND
RULE 13A-14 OF THE EXCHANGE ACT OF 1934</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B><U>CERTIFICATION</U></B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">I,
Brian Brown, certify that:</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">1.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">I have reviewed this annual
    report on Form 10-K of Co-Diagnostics, Inc.;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">2.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">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;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">3.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">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;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">4.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The registrant&rsquo;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
    &ndash; 15(f) and 15d &ndash; 15(f)) for the registrant and have:</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">a)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">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;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">b)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">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;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">c)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Evaluated the effectiveness
    of the registrant&rsquo;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</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">d)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Disclosed in this report
    any change in the registrant&rsquo;s internal control over financial reporting that occurred during the registrant&rsquo;s most recent
    fiscal quarter (the registrant&rsquo;s fourth fiscal quarter in the case of the annual report) that has materially affected, or is
    reasonably likely to materially affect, the registrant&rsquo;s internal control over financial reporting; and</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">5.</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The registrant&rsquo;s
    other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting,
    to the registrant&rsquo;s auditors and the audit committee of the registrant&rsquo;s board of directors (or persons performing the
    equivalent functions):</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">a)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">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&rsquo;s ability to record, process, summarize and report financial information; and</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">b)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Any fraud, whether or not
    material, that involves management or other employees who have a significant role in the registrant&rsquo;s internal control over
    financial reporting.</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 50%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Date: March
    16, 2023</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 50%; border-bottom: black 1.5pt solid"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><I>/s/
    Brian Brown</I></FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Brian Brown</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief Financial Officer and Principal Financial and
    Accounting Officer</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 1.05pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>


<!-- Field: Page; Sequence: 1; Options: Last -->
    <DIV STYLE="margin-bottom: 6pt; border-bottom: Black 1.5pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 100%">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>&nbsp;</B></FONT></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>6
<FILENAME>ex32-1.htm
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

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

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>EXHIBIT
32.1</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>CERTIFICATION
OF THE CHIEF EXECUTIVE OFFICER</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>PURSUANT
TO 18 U.S. C. SECTION 1350</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>AS
ADOPTED PURSUANT TO</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>SECTION
906 OF THE SARBANES-OXLEY ACT OF 2002</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
connection with the Annual Report of Co-Diagnostics, Inc. (the &ldquo;Company&rdquo;) on Form 10-K for the year ended December 31, 2022,
as filed with the Securities and Exchange Commission on the date hereof (the &ldquo;Report&rdquo;), I, Dwight Egan, Chief Executive Officer
of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that,
to my knowledge:</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(1)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Report fully complies
    with the requirements of Section 13 (a) or 15 (d) of the Securities Exchange Act of 1934; and</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(2)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The information contained
    in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 50%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Date:
    March 16, 2023</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 50%; border-bottom: black 1.5pt solid"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><I>/s/
    Dwight Egan</I></FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Dwight Egan</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief Executive Officer,
    President and Principal Executive Officer</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>


<!-- Field: Page; Sequence: 1; Options: Last -->
    <DIV STYLE="margin-bottom: 6pt; border-bottom: Black 1.5pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 100%">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>&nbsp;</B></FONT></P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>7
<FILENAME>ex32-2.htm
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="text-align: center; margin-top: 0; margin-bottom: 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>EXHIBIT
32.2</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>&nbsp;</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>CERTIFICATION
OF THE PRINCIPAL FINANCIAL OFFICER</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>PURSUANT
TO 18 U.S. C. SECTION 1350</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>AS
ADOPTED PURSUANT TO</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><B>SECTION
906 OF THE SARBANES-OXLEY ACT OF 2002</B></FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
connection with the Annual Report of Co-Diagnostics, Inc. (the &ldquo;Company&rdquo;) on Form 10-K for the year ended December 31, 2022
as filed with the Securities and Exchange Commission on the date hereof (the &ldquo;Report&rdquo;), I, Brian Brown, Chief Financial Officer
of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that,
to my knowledge:</FONT></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; width: 0.25in; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(1)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Report fully complies
    with the requirements of Section 13 (a) or 15 (d) of the Securities Exchange Act of 1934; and</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">(2)</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">The information contained
    in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%">
  <TR STYLE="font: 10pt Times New Roman, Times, Serif">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top; width: 50%; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Date:
    March 16, 2023</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom; width: 50%; border-bottom: black 1.5pt solid"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><I>/s/
    Brian Brown</I></FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Brian Brown</FONT></TD></TR>
  <TR STYLE="font: 10pt Times New Roman, Times, Serif">
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: top; text-align: justify"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></TD>
    <TD STYLE="font: 10pt Times New Roman, Times, Serif; vertical-align: bottom"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Chief Financial Officer
    and Principal Financial and Accounting Officer</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">&nbsp;</FONT></P>


<!-- Field: Page; Sequence: 1; Options: Last -->
    <DIV STYLE="margin-bottom: 6pt; border-bottom: Black 1.5pt solid"><TABLE CELLPADDING="0" CELLSPACING="0" STYLE="border-collapse: collapse; width: 100%; font-size: 10pt"><TR STYLE="vertical-align: top; text-align: left"><TD STYLE="width: 100%">&nbsp;</TD></TR></TABLE></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"></P>
</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>8
<FILENAME>codx-20221231.xsd
<DESCRIPTION>INLINE XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" ?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.17c -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
    <!-- Field: Doc-Info; Name: Misc; Value: 96Mps7xRiXgen8uDanwsWaiJqbP9z5Z8KekhvWBxbem6HyEhDFOKXydY97X2IYYM -->
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:dei="http://xbrl.sec.gov/dei/2022" xmlns:us-gaap="http://fasb.org/srt-sup/2022q3" xmlns:srt="http://fasb.org/srt/2022" xmlns:srt-types="http://fasb.org/srt-types/2022" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:CODX="http://codiagnostics.com/20221231" elementFormDefault="qualified" targetNamespace="http://codiagnostics.com/20221231">
    <annotation>
      <appinfo>
	<link:roleType roleURI="http://codiagnostics.com/role/Cover" id="Cover">
	  <link:definition>00000001 - Document - Cover</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/BalanceSheets" id="BalanceSheets">
	  <link:definition>00000002 - Statement - Consolidated Balance Sheets</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/BalanceSheetsParenthetical" id="BalanceSheetsParenthetical">
	  <link:definition>00000003 - Statement - Consolidated Balance Sheets (Parenthetical)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss" id="StatementsOfOperationsAndComprehensiveIncomeLoss">
	  <link:definition>00000004 - Statement - Consolidated Statements of Operations and Comprehensive Income (Loss)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity" id="StatementOfChangesInStockholdersEquity">
	  <link:definition>00000005 - Statement - Consolidated Statement of Changes in Stockholders' Equity</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/StatementsOfCashFlows" id="StatementsOfCashFlows">
	  <link:definition>00000006 - Statement - Consolidated Statements of Cash Flows</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/OverviewAndBasisOfPresentation" id="OverviewAndBasisOfPresentation">
	  <link:definition>00000007 - Disclosure - Overview and Basis of Presentation</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/SummaryOfSignificantAccountingPolicies" id="SummaryOfSignificantAccountingPolicies">
	  <link:definition>00000008 - Disclosure - Summary of Significant Accounting Policies</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstruments" id="CashCashEquivalentsAndFinancialInstruments">
	  <link:definition>00000009 - Disclosure - Cash, Cash Equivalents, and Financial Instruments</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/BusinessCombinations" id="BusinessCombinations">
	  <link:definition>00000010 - Disclosure - Business Combinations</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/FairValueMeasurements" id="FairValueMeasurements">
	  <link:definition>00000011 - Disclosure - Fair Value Measurements</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/PropertyAndEquipment" id="PropertyAndEquipment">
	  <link:definition>00000012 - Disclosure - Property and Equipment</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/GoodwillAndIntangibleAssets" id="GoodwillAndIntangibleAssets">
	  <link:definition>00000013 - Disclosure - Goodwill and Intangible Assets</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/AccruedExpenses" id="AccruedExpenses">
	  <link:definition>00000014 - Disclosure - Accrued Expenses</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/Revenue" id="Revenue">
	  <link:definition>00000015 - Disclosure - Revenue</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/EarningsPerShare" id="EarningsPerShare">
	  <link:definition>00000016 - Disclosure - Earnings per Share</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/Stock-basedCompensation" id="Stock-basedCompensation">
	  <link:definition>00000017 - Disclosure - Stock-Based Compensation</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/IncomeTaxes" id="IncomeTaxes">
	  <link:definition>00000018 - Disclosure - Income Taxes</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/CommitmentsAndContingencies" id="CommitmentsAndContingencies">
	  <link:definition>00000019 - Disclosure - Commitments and Contingencies</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ShareRepurchaseProgram" id="ShareRepurchaseProgram">
	  <link:definition>00000020 - Disclosure - Share Repurchase Program</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/SubsequentEvents" id="SubsequentEvents">
	  <link:definition>00000021 - Disclosure - Subsequent Events</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies" id="SummaryOfSignificantAccountingPoliciesPolicies">
	  <link:definition>00000022 - Disclosure - Summary of Significant Accounting Policies (Policies)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstrumentsTables" id="CashCashEquivalentsAndFinancialInstrumentsTables">
	  <link:definition>00000023 - Disclosure - Cash, Cash Equivalents, and Financial Instruments (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/BusinessCombinationsTables" id="BusinessCombinationsTables">
	  <link:definition>00000024 - Disclosure - Business Combinations (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/FairValueMeasurementsTables" id="FairValueMeasurementsTables">
	  <link:definition>00000025 - Disclosure - Fair Value Measurements (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/PropertyAndEquipmentTables" id="PropertyAndEquipmentTables">
	  <link:definition>00000026 - Disclosure - Property and Equipment (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/GoodwillAndIntangibleAssetsTables" id="GoodwillAndIntangibleAssetsTables">
	  <link:definition>00000027 - Disclosure - Goodwill and Intangible Assets (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/AccruedExpensesTables" id="AccruedExpensesTables">
	  <link:definition>00000028 - Disclosure - Accrued Expenses (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/RevenueTables" id="RevenueTables">
	  <link:definition>00000029 - Disclosure - Revenue (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/EarningsPerShareTables" id="EarningsPerShareTables">
	  <link:definition>00000030 - Disclosure - Earnings per Share (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/Stock-basedCompensationTables" id="Stock-basedCompensationTables">
	  <link:definition>00000031 - Disclosure - Stock-Based Compensation (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/IncomeTaxesTables" id="IncomeTaxesTables">
	  <link:definition>00000032 - Disclosure - Income Taxes (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/CommitmentsAndContingenciesTables" id="CommitmentsAndContingenciesTables">
	  <link:definition>00000033 - Disclosure - Commitments and Contingencies (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ShareRepurchaseProgramTables" id="ShareRepurchaseProgramTables">
	  <link:definition>00000034 - Disclosure - Share Repurchase Program (Tables)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative" id="SummaryOfSignificantAccountingPoliciesDetailsNarrative">
	  <link:definition>00000035 - Disclosure - Summary of Significant Accounting Policies (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails" id="ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails">
	  <link:definition>00000036 - Disclosure - Schedule of Cash, Cash Equivalents, and Marketable Investment Securities (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails" id="ScheduleOfAssetsAndLiabilitiesAssumedDetails">
	  <link:definition>00000037 - Disclosure - Schedule of Assets and Liabilities assumed (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative" id="BusinessCombinationsDetailsNarrative">
	  <link:definition>00000038 - Disclosure - Business Combinations (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails" id="ScheduleOfFairValueAssetsAndLiabilitiesDetails">
	  <link:definition>00000039 - Disclosure - Schedule of Fair Value Assets and Liabilities (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfChangesInFairValueMeasurementDetails" id="ScheduleOfChangesInFairValueMeasurementDetails">
	  <link:definition>00000040 - Disclosure - Schedule of Changes in Fair Value Measurement (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails" id="ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails">
	  <link:definition>00000041 - Disclosure - Schedule of Contingent Consideration Common Stock and Warrants (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails" id="ScheduleOfPropertyAndEquipmentDetails">
	  <link:definition>00000042 - Disclosure - Schedule of Property and Equipment (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfGoodwillDetails" id="ScheduleOfGoodwillDetails">
	  <link:definition>00000043 - Disclosure - Schedule of Goodwill (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails" id="ScheduleOfIntangibleAssetsNetDetails">
	  <link:definition>00000044 - Disclosure - Schedule of Intangible Assets, Net (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails" id="ScheduleOfFutureAmortizationExpenseDetails">
	  <link:definition>00000045 - Disclosure - Schedule of Future Amortization Expense (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/GoodwillAndIntangibleAssetsDetailsNarrative" id="GoodwillAndIntangibleAssetsDetailsNarrative">
	  <link:definition>00000046 - Disclosure - Goodwill and Intangible Assets (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails" id="ScheduleOfAccruedExpensesDetails">
	  <link:definition>00000047 - Disclosure - Schedule of Accrued Expenses (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails" id="SummaryOfRevenueByGeographicAreaDetails">
	  <link:definition>00000048 - Disclosure - Summary of Revenue by Geographic Area (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfDeferredRevenueDetails" id="ScheduleOfDeferredRevenueDetails">
	  <link:definition>00000049 - Disclosure - Schedule of Deferred Revenue (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails" id="ScheduleOfBasicAndDilutedEarningsPerShareDetails">
	  <link:definition>00000050 - Disclosure - Schedule of Basic and Diluted Earnings Per Share (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/EarningsPerShareDetailsNarrative" id="EarningsPerShareDetailsNarrative">
	  <link:definition>00000051 - Disclosure - Earnings per Share (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfOptionActivityDetails" id="ScheduleOfOptionActivityDetails">
	  <link:definition>00000052 - Disclosure - Schedule of Option Activity (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails" id="ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails">
	  <link:definition>00000053 - Disclosure - Schedule of Outstanding Restricted Stock Units and Related Activity (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails" id="ScheduleOfWarrantActivityDetails">
	  <link:definition>00000054 - Disclosure - Schedule of Warrant Activity (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails" id="ScheduleOfRecognizedStock-basedCompensationExpenseDetails">
	  <link:definition>00000055 - Disclosure - Schedule of Recognized Stock-based Compensation Expense (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative" id="Stock-basedCompensationDetailsNarrative">
	  <link:definition>00000056 - Disclosure - Stock-Based Compensation (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails" id="ScheduleOfComponentsIncomeTaxProvisionDetails">
	  <link:definition>00000057 - Disclosure - Schedule of Components Income Tax Provision (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails" id="ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails">
	  <link:definition>00000058 - Disclosure - Schedule of Benefit from Income Taxes and Effective Tax Rates (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails" id="ScheduleOfDeferredTaxAssetsDetails">
	  <link:definition>00000059 - Disclosure - Schedule of Deferred Tax Assets (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfUnrecognizedTaxBenefitsDetails" id="ScheduleOfUnrecognizedTaxBenefitsDetails">
	  <link:definition>00000060 - Disclosure - Schedule of Unrecognized Tax Benefits (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/IncomeTaxesDetailsNarrative" id="IncomeTaxesDetailsNarrative">
	  <link:definition>00000061 - Disclosure - Income Taxes (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails" id="ScheduleOfLeaseExpenseDetails">
	  <link:definition>00000062 - Disclosure - Schedule of Lease Expense (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails" id="ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails">
	  <link:definition>00000063 - Disclosure - Schedule of Maturities on Company Lease Liabilities (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfOtherInformationRelatedToOperatingLeaseDetails" id="ScheduleOfOtherInformationRelatedToOperatingLeaseDetails">
	  <link:definition>00000064 - Disclosure - Schedule of Other Information Related to Operating Lease (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ScheduleOfTreasuryStockDetails" id="ScheduleOfTreasuryStockDetails">
	  <link:definition>00000065 - Disclosure - Schedule of Treasury Stock (Details)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:roleType roleURI="http://codiagnostics.com/role/ShareRepurchaseProgramDetailsNarrative" id="ShareRepurchaseProgramDetailsNarrative">
	  <link:definition>00000066 - Disclosure - Share Repurchase Program (Details Narrative)</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:linkbaseRef xlink:type="simple" xlink:href="codx-20221231_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Presentation Links" />
	<link:linkbaseRef xlink:type="simple" xlink:href="codx-20221231_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Label Links" />
	<link:linkbaseRef xlink:type="simple" xlink:href="codx-20221231_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Calculation Links" />
	<link:linkbaseRef xlink:type="simple" xlink:href="codx-20221231_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Definition Links" />
      </appinfo>
    </annotation>
    <import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
    <import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" />
    <import namespace="http://xbrl.sec.gov/dei/2022" schemaLocation="https://xbrl.sec.gov/dei/2022/dei-2022.xsd" />
    <import namespace="http://fasb.org/us-gaap/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd" />
    <import namespace="http://fasb.org/us-gaap-sup/2022q3" schemaLocation="https://xbrl.fasb.org/us-gaap/2022q3/us-gaap-sup-2022q3.xsd" />
    <import namespace="http://fasb.org/srt-sup/2022q3" schemaLocation="https://xbrl.fasb.org/srt/2022q3/srt-sup-2022q3.xsd" />
    <import namespace="http://fasb.org/us-types/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd" />
    <import namespace="http://www.xbrl.org/dtr/type/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd" />
    <import namespace="http://xbrl.sec.gov/country/2022" schemaLocation="https://xbrl.sec.gov/country/2022/country-2022.xsd" />
    <import namespace="http://fasb.org/srt/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd" />
    <import namespace="http://fasb.org/srt-types/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd" />
    <element id="CODX_CustomersMember" name="CustomersMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_OneCustomerMember" name="OneCustomerMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_TwoCustomersTogetherMember" name="TwoCustomersTogetherMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_FourCustomersMember" name="FourCustomersMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_CustomersTogetherMember" name="CustomersTogetherMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember" name="AdvancedConceptionsIncAndIdahoMolecularIncMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ACIAndIDMOMember" name="ACIAndIDMOMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_MeasurementInputStrikePriceMember" name="MeasurementInputStrikePriceMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_MeasurementInputCostOfCapitalMember" name="MeasurementInputCostOfCapitalMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_MeasurementInputEquityVolatilityMember" name="MeasurementInputEquityVolatilityMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_MeasurementInputAssetVolatilityMember" name="MeasurementInputAssetVolatilityMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_MeasurementInputRevenueVolatilityMember" name="MeasurementInputRevenueVolatilityMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_RestOfWorldMember" name="RestOfWorldMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_TwoThousandFifteenLongTermIncentivePlanMember" name="TwoThousandFifteenLongTermIncentivePlanMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_StockOptionsMember" name="StockOptionsMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ThirdPartiesMember" name="ThirdPartiesMember" nillable="true" xbrli:periodType="duration" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_TaxesPayableNoncurrent" name="TaxesPayableNoncurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_GainOnRemeasurementOfAcquisitionContingencies" name="GainOnRemeasurementOfAcquisitionContingencies" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_NoncashLeaseExpense" name="NoncashLeaseExpense" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment" name="NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_BusinessAcquisitionMeasurementPeriodAdjustments" name="BusinessAcquisitionMeasurementPeriodAdjustments" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_StockIssuedDuringPeriodValueAcquisitionsAdjustments" name="StockIssuedDuringPeriodValueAcquisitionsAdjustments" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions" name="FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ScheduleOfOperatingLeaseTableTextBlock" name="ScheduleOfOperatingLeaseTableTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ScheduleOfTreasuryStockTableTextBlock" name="ScheduleOfTreasuryStockTableTextBlock" nillable="true" xbrli:periodType="duration" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_PaymentsToShareHoldersValueAcquisitions" name="PaymentsToShareHoldersValueAcquisitions" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_StockIssuedDuringPeriodSharesExchanged" name="StockIssuedDuringPeriodSharesExchanged" nillable="true" xbrli:periodType="duration" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_StockIssuedDuringPeriodSharesContingentConsideration" name="StockIssuedDuringPeriodSharesContingentConsideration" nillable="true" xbrli:periodType="duration" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_RemeasurementOfAcquisitionContingencies" name="RemeasurementOfAcquisitionContingencies" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_FairValueOfContingentConsiderationToCommonStock" name="FairValueOfContingentConsiderationToCommonStock" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_FairValueOfContingentConsiderationToWarrants" name="FairValueOfContingentConsiderationToWarrants" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ContingentConsideredIssuedForMeasurementPeriodAdjustments" name="ContingentConsideredIssuedForMeasurementPeriodAdjustments" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ContingentConsideredIssuedForBusinessAcquisitions" name="ContingentConsideredIssuedForBusinessAcquisitions" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm" name="BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm" nillable="true" xbrli:periodType="duration" type="xbrli:durationItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_IndefiniteLivedIntangibleAssetUsefulLife" name="IndefiniteLivedIntangibleAssetUsefulLife" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_IncreaseDueToPrepaymentsFromCustomers" name="IncreaseDueToPrepaymentsFromCustomers" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_IncreaseDueToNoteReceivable" name="IncreaseDueToNoteReceivable" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances" name="DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised" name="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised" nillable="true" xbrli:periodType="duration" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm" name="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm" nillable="true" xbrli:periodType="duration" type="xbrli:durationItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable" name="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable" nillable="true" xbrli:periodType="instant" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice" nillable="true" xbrli:periodType="instant" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue" nillable="true" xbrli:periodType="instant" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1" name="SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1" nillable="true" xbrli:periodType="duration" type="xbrli:durationItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice" name="ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice" nillable="true" xbrli:periodType="duration" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue" name="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue" nillable="true" xbrli:periodType="duration" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice" name="ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice" nillable="true" xbrli:periodType="duration" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue" name="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue" nillable="true" xbrli:periodType="duration" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice" name="ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice" nillable="true" xbrli:periodType="duration" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue" name="SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue" nillable="true" xbrli:periodType="duration" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice" name="ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice" nillable="true" xbrli:periodType="duration" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue" nillable="true" xbrli:periodType="duration" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3" name="SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3" nillable="true" xbrli:periodType="duration" type="xbrli:durationItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration" name="ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration" nillable="true" xbrli:periodType="duration" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice" name="IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice" nillable="true" xbrli:periodType="duration" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue" name="IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue" nillable="true" xbrli:periodType="duration" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice" nillable="true" xbrli:periodType="instant" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue" name="SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue" nillable="true" xbrli:periodType="instant" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_ClassOfWarrantExercisable" name="ClassOfWarrantExercisable" nillable="true" xbrli:periodType="instant" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction" name="EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction" nillable="true" xbrli:periodType="duration" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement" name="EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement" nillable="true" xbrli:periodType="duration" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_EffectiveIncomeTaxRateReconciliationGoodwillImpairment" name="EffectiveIncomeTaxRateReconciliationGoodwillImpairment" nillable="true" xbrli:periodType="duration" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance" name="EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance" nillable="true" xbrli:periodType="duration" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_DeferredTaxAssetsLeaseLiability" name="DeferredTaxAssetsLeaseLiability" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_DeferredTaxAssetsUniformCapitalization" name="DeferredTaxAssetsUniformCapitalization" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_DeferredTaxLiabilitiesRightOfUseAsset" name="DeferredTaxLiabilitiesRightOfUseAsset" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_NetDeferredTaxLiabilities" name="NetDeferredTaxLiabilities" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
    <element id="CODX_RepurchasesOfCommonStock" name="RepurchasesOfCommonStock" nillable="true" xbrli:periodType="duration" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" />
</schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>9
<FILENAME>codx-20221231_cal.xml
<DESCRIPTION>INLINE XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.17c -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef roleURI="http://codiagnostics.com/role/Cover" xlink:href="codx-20221231.xsd#Cover" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BalanceSheets" xlink:href="codx-20221231.xsd#BalanceSheets" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BalanceSheetsParenthetical" xlink:href="codx-20221231.xsd#BalanceSheetsParenthetical" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss" xlink:href="codx-20221231.xsd#StatementsOfOperationsAndComprehensiveIncomeLoss" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity" xlink:href="codx-20221231.xsd#StatementOfChangesInStockholdersEquity" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/StatementsOfCashFlows" xlink:href="codx-20221231.xsd#StatementsOfCashFlows" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/OverviewAndBasisOfPresentation" xlink:href="codx-20221231.xsd#OverviewAndBasisOfPresentation" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SummaryOfSignificantAccountingPolicies" xlink:href="codx-20221231.xsd#SummaryOfSignificantAccountingPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstruments" xlink:href="codx-20221231.xsd#CashCashEquivalentsAndFinancialInstruments" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BusinessCombinations" xlink:href="codx-20221231.xsd#BusinessCombinations" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/FairValueMeasurements" xlink:href="codx-20221231.xsd#FairValueMeasurements" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/PropertyAndEquipment" xlink:href="codx-20221231.xsd#PropertyAndEquipment" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/GoodwillAndIntangibleAssets" xlink:href="codx-20221231.xsd#GoodwillAndIntangibleAssets" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/AccruedExpenses" xlink:href="codx-20221231.xsd#AccruedExpenses" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/Revenue" xlink:href="codx-20221231.xsd#Revenue" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/EarningsPerShare" xlink:href="codx-20221231.xsd#EarningsPerShare" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/Stock-basedCompensation" xlink:href="codx-20221231.xsd#Stock-basedCompensation" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/IncomeTaxes" xlink:href="codx-20221231.xsd#IncomeTaxes" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/CommitmentsAndContingencies" xlink:href="codx-20221231.xsd#CommitmentsAndContingencies" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ShareRepurchaseProgram" xlink:href="codx-20221231.xsd#ShareRepurchaseProgram" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SubsequentEvents" xlink:href="codx-20221231.xsd#SubsequentEvents" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:href="codx-20221231.xsd#SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstrumentsTables" xlink:href="codx-20221231.xsd#CashCashEquivalentsAndFinancialInstrumentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BusinessCombinationsTables" xlink:href="codx-20221231.xsd#BusinessCombinationsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/FairValueMeasurementsTables" xlink:href="codx-20221231.xsd#FairValueMeasurementsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/PropertyAndEquipmentTables" xlink:href="codx-20221231.xsd#PropertyAndEquipmentTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/GoodwillAndIntangibleAssetsTables" xlink:href="codx-20221231.xsd#GoodwillAndIntangibleAssetsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/AccruedExpensesTables" xlink:href="codx-20221231.xsd#AccruedExpensesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/RevenueTables" xlink:href="codx-20221231.xsd#RevenueTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/EarningsPerShareTables" xlink:href="codx-20221231.xsd#EarningsPerShareTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/Stock-basedCompensationTables" xlink:href="codx-20221231.xsd#Stock-basedCompensationTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/IncomeTaxesTables" xlink:href="codx-20221231.xsd#IncomeTaxesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/CommitmentsAndContingenciesTables" xlink:href="codx-20221231.xsd#CommitmentsAndContingenciesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ShareRepurchaseProgramTables" xlink:href="codx-20221231.xsd#ShareRepurchaseProgramTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative" xlink:href="codx-20221231.xsd#SummaryOfSignificantAccountingPoliciesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails" xlink:href="codx-20221231.xsd#ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails" xlink:href="codx-20221231.xsd#ScheduleOfAssetsAndLiabilitiesAssumedDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative" xlink:href="codx-20221231.xsd#BusinessCombinationsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails" xlink:href="codx-20221231.xsd#ScheduleOfFairValueAssetsAndLiabilitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfChangesInFairValueMeasurementDetails" xlink:href="codx-20221231.xsd#ScheduleOfChangesInFairValueMeasurementDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails" xlink:href="codx-20221231.xsd#ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails" xlink:href="codx-20221231.xsd#ScheduleOfPropertyAndEquipmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfGoodwillDetails" xlink:href="codx-20221231.xsd#ScheduleOfGoodwillDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails" xlink:href="codx-20221231.xsd#ScheduleOfIntangibleAssetsNetDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails" xlink:href="codx-20221231.xsd#ScheduleOfFutureAmortizationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/GoodwillAndIntangibleAssetsDetailsNarrative" xlink:href="codx-20221231.xsd#GoodwillAndIntangibleAssetsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails" xlink:href="codx-20221231.xsd#ScheduleOfAccruedExpensesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails" xlink:href="codx-20221231.xsd#SummaryOfRevenueByGeographicAreaDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfDeferredRevenueDetails" xlink:href="codx-20221231.xsd#ScheduleOfDeferredRevenueDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails" xlink:href="codx-20221231.xsd#ScheduleOfBasicAndDilutedEarningsPerShareDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/EarningsPerShareDetailsNarrative" xlink:href="codx-20221231.xsd#EarningsPerShareDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfOptionActivityDetails" xlink:href="codx-20221231.xsd#ScheduleOfOptionActivityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails" xlink:href="codx-20221231.xsd#ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails" xlink:href="codx-20221231.xsd#ScheduleOfWarrantActivityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails" xlink:href="codx-20221231.xsd#ScheduleOfRecognizedStock-basedCompensationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative" xlink:href="codx-20221231.xsd#Stock-basedCompensationDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails" xlink:href="codx-20221231.xsd#ScheduleOfComponentsIncomeTaxProvisionDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails" xlink:href="codx-20221231.xsd#ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails" xlink:href="codx-20221231.xsd#ScheduleOfDeferredTaxAssetsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfUnrecognizedTaxBenefitsDetails" xlink:href="codx-20221231.xsd#ScheduleOfUnrecognizedTaxBenefitsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/IncomeTaxesDetailsNarrative" xlink:href="codx-20221231.xsd#IncomeTaxesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails" xlink:href="codx-20221231.xsd#ScheduleOfLeaseExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails" xlink:href="codx-20221231.xsd#ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfOtherInformationRelatedToOperatingLeaseDetails" xlink:href="codx-20221231.xsd#ScheduleOfOtherInformationRelatedToOperatingLeaseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfTreasuryStockDetails" xlink:href="codx-20221231.xsd#ScheduleOfTreasuryStockDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ShareRepurchaseProgramDetailsNarrative" xlink:href="codx-20221231.xsd#ShareRepurchaseProgramDetailsNarrative" xlink:type="simple" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Cover" xlink:title="00000001 - Document - Cover" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BalanceSheets" xlink:title="00000002 - Statement - Consolidated Balance Sheets">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaapAssetsCurrent" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaapCashAndCashEquivalentsAtCarryingValue" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapCashAndCashEquivalentsAtCarryingValue" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MarketableSecuritiesCurrent" xlink:label="loc_us-gaapMarketableSecuritiesCurrent" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapMarketableSecuritiesCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaapAccountsReceivableNetCurrent" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapAccountsReceivableNetCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapInventoryNet" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReceivable" xlink:label="loc_us-gaapIncomeTaxReceivable" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapIncomeTaxReceivable" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="loc_us-gaapPrepaidExpenseAndOtherAssetsCurrent" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapPrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesAndLoansReceivableNetCurrent" xlink:label="loc_us-gaapNotesAndLoansReceivableNetCurrent" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapNotesAndLoansReceivableNetCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets" xlink:label="loc_us-gaapAssets" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapAssetsCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaapOperatingLeaseRightOfUseAsset" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapOperatingLeaseRightOfUseAsset" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapGoodwill" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RealEstateInvestmentsJointVentures" xlink:label="loc_us-gaapRealEstateInvestmentsJointVentures" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapRealEstateInvestmentsJointVentures" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesAndLoansReceivableNetNoncurrent" xlink:label="loc_us-gaapNotesAndLoansReceivableNetNoncurrent" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapNotesAndLoansReceivableNetNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaapLiabilitiesCurrent" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaapAccountsPayableCurrent" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapAccountsPayableCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaapAccruedLiabilitiesCurrent" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapAccruedLiabilitiesCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityCurrent" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapOperatingLeaseLiabilityCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetAcquisitionContingentConsiderationLiabilityCurrent" xlink:label="loc_us-gaapAssetAcquisitionContingentConsiderationLiabilityCurrent" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapAssetAcquisitionContingentConsiderationLiabilityCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TaxesPayableCurrent" xlink:label="loc_us-gaapTaxesPayableCurrent" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapTaxesPayableCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityCurrent" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapContractWithCustomerLiabilityCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="loc_us-gaapLiabilitiesNoncurrent" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_TaxesPayableNoncurrent" xlink:label="loc_CODXTaxesPayableNoncurrent" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesNoncurrent" xlink:to="loc_CODXTaxesPayableNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaapDeferredIncomeTaxLiabilitiesNet" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesNoncurrent" xlink:to="loc_us-gaapDeferredIncomeTaxLiabilitiesNet" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityNoncurrent" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesNoncurrent" xlink:to="loc_us-gaapOperatingLeaseLiabilityNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetAcquisitionContingentConsiderationLiabilityNoncurrent" xlink:label="loc_us-gaapAssetAcquisitionContingentConsiderationLiabilityNoncurrent" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesNoncurrent" xlink:to="loc_us-gaapAssetAcquisitionContingentConsiderationLiabilityNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaapLiabilities" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilities" xlink:to="loc_us-gaapLiabilitiesCurrent" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilities" xlink:to="loc_us-gaapLiabilitiesNoncurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaapPreferredStockValue" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapPreferredStockValue" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaapCommonStockValue" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapCommonStockValue" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValue" xlink:label="loc_us-gaapTreasuryStockValue" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapTreasuryStockValue" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="loc_us-gaapAdditionalPaidInCapital" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapAdditionalPaidInCapital" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaapRetainedEarningsAccumulatedDeficit" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapRetainedEarningsAccumulatedDeficit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaapLiabilitiesAndStockholdersEquity" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquity" xlink:to="loc_us-gaapLiabilities" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="loc_us-gaapCommitmentsAndContingencies" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquity" xlink:to="loc_us-gaapCommitmentsAndContingencies" xlink:type="arc" weight="1" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquity" xlink:to="loc_us-gaapStockholdersEquity" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BalanceSheetsParenthetical" xlink:title="00000003 - Statement - Consolidated Balance Sheets (Parenthetical)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss" xlink:title="00000004 - Statement - Consolidated Statements of Operations and Comprehensive Income (Loss)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaapGrossProfit" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapGrossProfit" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfRevenue" xlink:label="loc_us-gaapCostOfRevenue" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapGrossProfit" xlink:to="loc_us-gaapCostOfRevenue" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaapOperatingExpenses" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaapSellingAndMarketingExpense" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapSellingAndMarketingExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaapGeneralAndAdministrativeExpense" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapGeneralAndAdministrativeExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaapResearchAndDevelopmentExpense" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapResearchAndDevelopmentExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationAndAmortization" xlink:label="loc_us-gaapDepreciationAndAmortization" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapDepreciationAndAmortization" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="loc_us-gaapGoodwillImpairmentLoss" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapGoodwillImpairmentLoss" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaapOperatingIncomeLoss" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingIncomeLoss" xlink:to="loc_us-gaapGrossProfit" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingIncomeLoss" xlink:to="loc_us-gaapOperatingExpenses" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaapNonoperatingIncomeExpense" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestIncomeOther" xlink:label="loc_us-gaapInterestIncomeOther" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNonoperatingIncomeExpense" xlink:to="loc_us-gaapInterestIncomeOther" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="loc_us-gaapGainLossOnDispositionOfAssets1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNonoperatingIncomeExpense" xlink:to="loc_us-gaapGainLossOnDispositionOfAssets1" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_GainOnRemeasurementOfAcquisitionContingencies" xlink:label="loc_CODXGainOnRemeasurementOfAcquisitionContingencies" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNonoperatingIncomeExpense" xlink:to="loc_CODXGainOnRemeasurementOfAcquisitionContingencies" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfInvestments" xlink:label="loc_us-gaapGainLossOnSaleOfInvestments" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNonoperatingIncomeExpense" xlink:to="loc_us-gaapGainLossOnSaleOfInvestments" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaapOperatingIncomeLoss" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaapNonoperatingIncomeExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetIncomeLoss" xlink:to="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetIncomeLoss" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossBeforeTax" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOtherComprehensiveIncomeLossBeforeTax" xlink:to="loc_us-gaapOtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTax" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTax" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTax" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossBeforeTax" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity" xlink:title="00000005 - Statement - Consolidated Statement of Changes in Stockholders&apos; Equity" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/StatementsOfCashFlows" xlink:title="00000006 - Statement - Consolidated Statements of Cash Flows">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaapDepreciationDepletionAndAmortization" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapDepreciationDepletionAndAmortization" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="loc_us-gaapGoodwillImpairmentLoss" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapGoodwillImpairmentLoss" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaapShareBasedCompensation" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapShareBasedCompensation" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_GainOnRemeasurementOfAcquisitionContingencies" xlink:label="loc_CODXGainOnRemeasurementOfAcquisitionContingencies" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_CODXGainOnRemeasurementOfAcquisitionContingencies" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_NoncashLeaseExpense" xlink:label="loc_CODXNoncashLeaseExpense" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_CODXNoncashLeaseExpense" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfInvestments" xlink:label="loc_us-gaapGainLossOnSaleOfInvestments" />
      <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapGainLossOnSaleOfInvestments" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="loc_us-gaapGainLossOnDispositionOfAssets1" />
      <link:calculationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapGainLossOnDispositionOfAssets1" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredIncomeTaxExpenseBenefit" />
      <link:calculationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapDeferredIncomeTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaapProvisionForDoubtfulAccounts" />
      <link:calculationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapProvisionForDoubtfulAccounts" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaapIncreaseDecreaseInAccountsReceivable" />
      <link:calculationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInAccountsReceivable" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="loc_us-gaapIncreaseDecreaseInPrepaidExpense" />
      <link:calculationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInPrepaidExpense" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaapIncreaseDecreaseInInventories" />
      <link:calculationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInInventories" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="loc_us-gaapIncreaseDecreaseInContractWithCustomerLiability" />
      <link:calculationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInContractWithCustomerLiability" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable" />
      <link:calculationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="loc_us-gaapIncreaseDecreaseInAccountsPayableAndAccruedLiabilities" />
      <link:calculationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:label="loc_us-gaapProceedsFromSaleAndMaturityOfMarketableSecurities" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireMarketableSecurities" xlink:label="loc_us-gaapPaymentsToAcquireMarketableSecurities" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapPaymentsToAcquireMarketableSecurities" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromDivestitureOfInterestInJointVenture" xlink:label="loc_us-gaapProceedsFromDivestitureOfInterestInJointVenture" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapProceedsFromDivestitureOfInterestInJointVenture" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaapPaymentsToAcquireBusinessesNetOfCashAcquired" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapPaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="loc_us-gaapProceedsFromIssuanceOfCommonStock" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapProceedsFromIssuanceOfCommonStock" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="loc_us-gaapPaymentsForRepurchaseOfCommonStock" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapPaymentsForRepurchaseOfCommonStock" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:type="arc" weight="1" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/OverviewAndBasisOfPresentation" xlink:title="00000007 - Disclosure - Overview and Basis of Presentation" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SummaryOfSignificantAccountingPolicies" xlink:title="00000008 - Disclosure - Summary of Significant Accounting Policies" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstruments" xlink:title="00000009 - Disclosure - Cash, Cash Equivalents, and Financial Instruments" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BusinessCombinations" xlink:title="00000010 - Disclosure - Business Combinations" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/FairValueMeasurements" xlink:title="00000011 - Disclosure - Fair Value Measurements" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/PropertyAndEquipment" xlink:title="00000012 - Disclosure - Property and Equipment" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/GoodwillAndIntangibleAssets" xlink:title="00000013 - Disclosure - Goodwill and Intangible Assets" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/AccruedExpenses" xlink:title="00000014 - Disclosure - Accrued Expenses" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Revenue" xlink:title="00000015 - Disclosure - Revenue" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/EarningsPerShare" xlink:title="00000016 - Disclosure - Earnings per Share" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Stock-basedCompensation" xlink:title="00000017 - Disclosure - Stock-Based Compensation" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/IncomeTaxes" xlink:title="00000018 - Disclosure - Income Taxes" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/CommitmentsAndContingencies" xlink:title="00000019 - Disclosure - Commitments and Contingencies" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ShareRepurchaseProgram" xlink:title="00000020 - Disclosure - Share Repurchase Program" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SubsequentEvents" xlink:title="00000021 - Disclosure - Subsequent Events" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:title="00000022 - Disclosure - Summary of Significant Accounting Policies (Policies)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstrumentsTables" xlink:title="00000023 - Disclosure - Cash, Cash Equivalents, and Financial Instruments (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BusinessCombinationsTables" xlink:title="00000024 - Disclosure - Business Combinations (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/FairValueMeasurementsTables" xlink:title="00000025 - Disclosure - Fair Value Measurements (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/PropertyAndEquipmentTables" xlink:title="00000026 - Disclosure - Property and Equipment (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/GoodwillAndIntangibleAssetsTables" xlink:title="00000027 - Disclosure - Goodwill and Intangible Assets (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/AccruedExpensesTables" xlink:title="00000028 - Disclosure - Accrued Expenses (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/RevenueTables" xlink:title="00000029 - Disclosure - Revenue (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/EarningsPerShareTables" xlink:title="00000030 - Disclosure - Earnings per Share (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Stock-basedCompensationTables" xlink:title="00000031 - Disclosure - Stock-Based Compensation (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/IncomeTaxesTables" xlink:title="00000032 - Disclosure - Income Taxes (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/CommitmentsAndContingenciesTables" xlink:title="00000033 - Disclosure - Commitments and Contingencies (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ShareRepurchaseProgramTables" xlink:title="00000034 - Disclosure - Share Repurchase Program (Tables)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative" xlink:title="00000035 - Disclosure - Summary of Significant Accounting Policies (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails" xlink:title="00000036 - Disclosure - Schedule of Cash, Cash Equivalents, and Marketable Investment Securities (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails" xlink:title="00000037 - Disclosure - Schedule of Assets and Liabilities assumed (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative" xlink:title="00000038 - Disclosure - Business Combinations (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails" xlink:title="00000039 - Disclosure - Schedule of Fair Value Assets and Liabilities (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfChangesInFairValueMeasurementDetails" xlink:title="00000040 - Disclosure - Schedule of Changes in Fair Value Measurement (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails" xlink:title="00000041 - Disclosure - Schedule of Contingent Consideration Common Stock and Warrants (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails" xlink:title="00000042 - Disclosure - Schedule of Property and Equipment (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfGoodwillDetails" xlink:title="00000043 - Disclosure - Schedule of Goodwill (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails" xlink:title="00000044 - Disclosure - Schedule of Intangible Assets, Net (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails" xlink:title="00000045 - Disclosure - Schedule of Future Amortization Expense (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsNet" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsNet" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsNet" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/GoodwillAndIntangibleAssetsDetailsNarrative" xlink:title="00000046 - Disclosure - Goodwill and Intangible Assets (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails" xlink:title="00000047 - Disclosure - Schedule of Accrued Expenses (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaapAccruedLiabilitiesCurrent" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedPayrollTaxesCurrent" xlink:label="loc_us-gaapAccruedPayrollTaxesCurrent" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAccruedLiabilitiesCurrent" xlink:to="loc_us-gaapAccruedPayrollTaxesCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedSalesCommissionCurrent" xlink:label="loc_us-gaapAccruedSalesCommissionCurrent" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAccruedLiabilitiesCurrent" xlink:to="loc_us-gaapAccruedSalesCommissionCurrent" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaapOtherAccruedLiabilitiesCurrent" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAccruedLiabilitiesCurrent" xlink:to="loc_us-gaapOtherAccruedLiabilitiesCurrent" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails" xlink:title="00000048 - Disclosure - Summary of Revenue by Geographic Area (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfDeferredRevenueDetails" xlink:title="00000049 - Disclosure - Schedule of Deferred Revenue (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails" xlink:title="00000050 - Disclosure - Schedule of Basic and Diluted Earnings Per Share (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/EarningsPerShareDetailsNarrative" xlink:title="00000051 - Disclosure - Earnings per Share (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfOptionActivityDetails" xlink:title="00000052 - Disclosure - Schedule of Option Activity (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails" xlink:title="00000053 - Disclosure - Schedule of Outstanding Restricted Stock Units and Related Activity (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails" xlink:title="00000054 - Disclosure - Schedule of Warrant Activity (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails" xlink:title="00000055 - Disclosure - Schedule of Recognized Stock-based Compensation Expense (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative" xlink:title="00000056 - Disclosure - Stock-Based Compensation (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails" xlink:title="00000057 - Disclosure - Schedule of Components Income Tax Provision (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentFederalStateAndLocalTaxExpenseBenefit" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentFederalTaxExpenseBenefit" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCurrentFederalStateAndLocalTaxExpenseBenefit" xlink:to="loc_us-gaapCurrentFederalTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentStateAndLocalTaxExpenseBenefit" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCurrentFederalStateAndLocalTaxExpenseBenefit" xlink:to="loc_us-gaapCurrentStateAndLocalTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredFederalStateAndLocalTaxExpenseBenefit" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredFederalIncomeTaxExpenseBenefit" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredFederalStateAndLocalTaxExpenseBenefit" xlink:to="loc_us-gaapDeferredFederalIncomeTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredStateAndLocalIncomeTaxExpenseBenefit" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredFederalStateAndLocalTaxExpenseBenefit" xlink:to="loc_us-gaapDeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeTaxExpenseBenefit" xlink:to="loc_us-gaapCurrentFederalStateAndLocalTaxExpenseBenefit" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeTaxExpenseBenefit" xlink:to="loc_us-gaapDeferredFederalStateAndLocalTaxExpenseBenefit" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails" xlink:title="00000058 - Disclosure - Schedule of Benefit from Income Taxes and Effective Tax Rates (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails" xlink:title="00000059 - Disclosure - Schedule of Deferred Tax Assets (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="loc_us-gaapDeferredTaxAssetsGross" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:label="loc_us-gaapDeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredTaxAssetsGross" xlink:to="loc_us-gaapDeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:label="loc_us-gaapDeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredTaxAssetsGross" xlink:to="loc_us-gaapDeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits" xlink:label="loc_us-gaapDeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredTaxAssetsGross" xlink:to="loc_us-gaapDeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:label="loc_us-gaapDeferredTaxAssetsInProcessResearchAndDevelopment" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredTaxAssetsGross" xlink:to="loc_us-gaapDeferredTaxAssetsInProcessResearchAndDevelopment" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_DeferredTaxAssetsLeaseLiability" xlink:label="loc_CODXDeferredTaxAssetsLeaseLiability" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredTaxAssetsGross" xlink:to="loc_CODXDeferredTaxAssetsLeaseLiability" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_DeferredTaxAssetsUniformCapitalization" xlink:label="loc_CODXDeferredTaxAssetsUniformCapitalization" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredTaxAssetsGross" xlink:to="loc_CODXDeferredTaxAssetsUniformCapitalization" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="loc_us-gaapDeferredIncomeTaxLiabilities" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="loc_us-gaapDeferredTaxLiabilitiesPropertyPlantAndEquipment" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredIncomeTaxLiabilities" xlink:to="loc_us-gaapDeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="loc_us-gaapDeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredIncomeTaxLiabilities" xlink:to="loc_us-gaapDeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:label="loc_us-gaapDeferredTaxLiabilitiesPrepaidExpenses" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredIncomeTaxLiabilities" xlink:to="loc_us-gaapDeferredTaxLiabilitiesPrepaidExpenses" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_DeferredTaxLiabilitiesRightOfUseAsset" xlink:label="loc_CODXDeferredTaxLiabilitiesRightOfUseAsset" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredIncomeTaxLiabilities" xlink:to="loc_CODXDeferredTaxLiabilitiesRightOfUseAsset" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOtherComprehensiveIncome" xlink:label="loc_us-gaapDeferredTaxLiabilitiesOtherComprehensiveIncome" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredIncomeTaxLiabilities" xlink:to="loc_us-gaapDeferredTaxLiabilitiesOtherComprehensiveIncome" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOther" xlink:label="loc_us-gaapDeferredTaxLiabilitiesOther" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredIncomeTaxLiabilities" xlink:to="loc_us-gaapDeferredTaxLiabilitiesOther" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_NetDeferredTaxLiabilities" xlink:label="loc_CODXNetDeferredTaxLiabilities" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_CODXNetDeferredTaxLiabilities" xlink:to="loc_us-gaapDeferredTaxAssetsGross" xlink:type="arc" weight="1" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_CODXNetDeferredTaxLiabilities" xlink:to="loc_us-gaapDeferredIncomeTaxLiabilities" xlink:type="arc" weight="-1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="loc_us-gaapDeferredTaxAssetsLiabilitiesNet" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredTaxAssetsLiabilitiesNet" xlink:to="loc_CODXNetDeferredTaxLiabilities" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaapDeferredTaxAssetsValuationAllowance" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapDeferredTaxAssetsLiabilitiesNet" xlink:to="loc_us-gaapDeferredTaxAssetsValuationAllowance" xlink:type="arc" weight="-1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfUnrecognizedTaxBenefitsDetails" xlink:title="00000060 - Disclosure - Schedule of Unrecognized Tax Benefits (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/IncomeTaxesDetailsNarrative" xlink:title="00000061 - Disclosure - Income Taxes (Details Narrative)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails" xlink:title="00000062 - Disclosure - Schedule of Lease Expense (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost" xlink:label="loc_us-gaapLeaseCost" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost" xlink:label="loc_us-gaapOperatingLeaseCost" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLeaseCost" xlink:to="loc_us-gaapOperatingLeaseCost" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermLeaseCost" xlink:label="loc_us-gaapShortTermLeaseCost" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLeaseCost" xlink:to="loc_us-gaapShortTermLeaseCost" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails" xlink:title="00000063 - Disclosure - Schedule of Maturities on Company Lease Liabilities (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
      <link:calculationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
      <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
      <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
      <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFive" />
      <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:type="arc" weight="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" />
      <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:type="arc" weight="1" />
    </link:calculationLink>
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfOtherInformationRelatedToOperatingLeaseDetails" xlink:title="00000064 - Disclosure - Schedule of Other Information Related to Operating Lease (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfTreasuryStockDetails" xlink:title="00000065 - Disclosure - Schedule of Treasury Stock (Details)" />
    <link:calculationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ShareRepurchaseProgramDetailsNarrative" xlink:title="00000066 - Disclosure - Share Repurchase Program (Details Narrative)" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>10
<FILENAME>codx-20221231_def.xml
<DESCRIPTION>INLINE XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.17c -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef roleURI="http://codiagnostics.com/role/Cover" xlink:href="codx-20221231.xsd#Cover" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BalanceSheets" xlink:href="codx-20221231.xsd#BalanceSheets" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BalanceSheetsParenthetical" xlink:href="codx-20221231.xsd#BalanceSheetsParenthetical" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss" xlink:href="codx-20221231.xsd#StatementsOfOperationsAndComprehensiveIncomeLoss" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity" xlink:href="codx-20221231.xsd#StatementOfChangesInStockholdersEquity" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/StatementsOfCashFlows" xlink:href="codx-20221231.xsd#StatementsOfCashFlows" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/OverviewAndBasisOfPresentation" xlink:href="codx-20221231.xsd#OverviewAndBasisOfPresentation" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SummaryOfSignificantAccountingPolicies" xlink:href="codx-20221231.xsd#SummaryOfSignificantAccountingPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstruments" xlink:href="codx-20221231.xsd#CashCashEquivalentsAndFinancialInstruments" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BusinessCombinations" xlink:href="codx-20221231.xsd#BusinessCombinations" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/FairValueMeasurements" xlink:href="codx-20221231.xsd#FairValueMeasurements" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/PropertyAndEquipment" xlink:href="codx-20221231.xsd#PropertyAndEquipment" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/GoodwillAndIntangibleAssets" xlink:href="codx-20221231.xsd#GoodwillAndIntangibleAssets" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/AccruedExpenses" xlink:href="codx-20221231.xsd#AccruedExpenses" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/Revenue" xlink:href="codx-20221231.xsd#Revenue" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/EarningsPerShare" xlink:href="codx-20221231.xsd#EarningsPerShare" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/Stock-basedCompensation" xlink:href="codx-20221231.xsd#Stock-basedCompensation" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/IncomeTaxes" xlink:href="codx-20221231.xsd#IncomeTaxes" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/CommitmentsAndContingencies" xlink:href="codx-20221231.xsd#CommitmentsAndContingencies" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ShareRepurchaseProgram" xlink:href="codx-20221231.xsd#ShareRepurchaseProgram" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SubsequentEvents" xlink:href="codx-20221231.xsd#SubsequentEvents" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:href="codx-20221231.xsd#SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstrumentsTables" xlink:href="codx-20221231.xsd#CashCashEquivalentsAndFinancialInstrumentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BusinessCombinationsTables" xlink:href="codx-20221231.xsd#BusinessCombinationsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/FairValueMeasurementsTables" xlink:href="codx-20221231.xsd#FairValueMeasurementsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/PropertyAndEquipmentTables" xlink:href="codx-20221231.xsd#PropertyAndEquipmentTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/GoodwillAndIntangibleAssetsTables" xlink:href="codx-20221231.xsd#GoodwillAndIntangibleAssetsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/AccruedExpensesTables" xlink:href="codx-20221231.xsd#AccruedExpensesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/RevenueTables" xlink:href="codx-20221231.xsd#RevenueTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/EarningsPerShareTables" xlink:href="codx-20221231.xsd#EarningsPerShareTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/Stock-basedCompensationTables" xlink:href="codx-20221231.xsd#Stock-basedCompensationTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/IncomeTaxesTables" xlink:href="codx-20221231.xsd#IncomeTaxesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/CommitmentsAndContingenciesTables" xlink:href="codx-20221231.xsd#CommitmentsAndContingenciesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ShareRepurchaseProgramTables" xlink:href="codx-20221231.xsd#ShareRepurchaseProgramTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative" xlink:href="codx-20221231.xsd#SummaryOfSignificantAccountingPoliciesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails" xlink:href="codx-20221231.xsd#ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails" xlink:href="codx-20221231.xsd#ScheduleOfAssetsAndLiabilitiesAssumedDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative" xlink:href="codx-20221231.xsd#BusinessCombinationsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails" xlink:href="codx-20221231.xsd#ScheduleOfFairValueAssetsAndLiabilitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfChangesInFairValueMeasurementDetails" xlink:href="codx-20221231.xsd#ScheduleOfChangesInFairValueMeasurementDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails" xlink:href="codx-20221231.xsd#ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails" xlink:href="codx-20221231.xsd#ScheduleOfPropertyAndEquipmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfGoodwillDetails" xlink:href="codx-20221231.xsd#ScheduleOfGoodwillDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails" xlink:href="codx-20221231.xsd#ScheduleOfIntangibleAssetsNetDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails" xlink:href="codx-20221231.xsd#ScheduleOfFutureAmortizationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/GoodwillAndIntangibleAssetsDetailsNarrative" xlink:href="codx-20221231.xsd#GoodwillAndIntangibleAssetsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails" xlink:href="codx-20221231.xsd#ScheduleOfAccruedExpensesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails" xlink:href="codx-20221231.xsd#SummaryOfRevenueByGeographicAreaDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfDeferredRevenueDetails" xlink:href="codx-20221231.xsd#ScheduleOfDeferredRevenueDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails" xlink:href="codx-20221231.xsd#ScheduleOfBasicAndDilutedEarningsPerShareDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/EarningsPerShareDetailsNarrative" xlink:href="codx-20221231.xsd#EarningsPerShareDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfOptionActivityDetails" xlink:href="codx-20221231.xsd#ScheduleOfOptionActivityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails" xlink:href="codx-20221231.xsd#ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails" xlink:href="codx-20221231.xsd#ScheduleOfWarrantActivityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails" xlink:href="codx-20221231.xsd#ScheduleOfRecognizedStock-basedCompensationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative" xlink:href="codx-20221231.xsd#Stock-basedCompensationDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails" xlink:href="codx-20221231.xsd#ScheduleOfComponentsIncomeTaxProvisionDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails" xlink:href="codx-20221231.xsd#ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails" xlink:href="codx-20221231.xsd#ScheduleOfDeferredTaxAssetsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfUnrecognizedTaxBenefitsDetails" xlink:href="codx-20221231.xsd#ScheduleOfUnrecognizedTaxBenefitsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/IncomeTaxesDetailsNarrative" xlink:href="codx-20221231.xsd#IncomeTaxesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails" xlink:href="codx-20221231.xsd#ScheduleOfLeaseExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails" xlink:href="codx-20221231.xsd#ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfOtherInformationRelatedToOperatingLeaseDetails" xlink:href="codx-20221231.xsd#ScheduleOfOtherInformationRelatedToOperatingLeaseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfTreasuryStockDetails" xlink:href="codx-20221231.xsd#ScheduleOfTreasuryStockDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ShareRepurchaseProgramDetailsNarrative" xlink:href="codx-20221231.xsd#ShareRepurchaseProgramDetailsNarrative" xlink:type="simple" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" arcroleURI="http://xbrl.org/int/dim/arcrole/all" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#notAll" arcroleURI="http://xbrl.org/int/dim/arcrole/notAll" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Cover" xlink:title="00000001 - Document - Cover" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BalanceSheets" xlink:title="00000002 - Statement - Consolidated Balance Sheets" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BalanceSheetsParenthetical" xlink:title="00000003 - Statement - Consolidated Balance Sheets (Parenthetical)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss" xlink:title="00000004 - Statement - Consolidated Statements of Operations and Comprehensive Income (Loss)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity" xlink:title="00000005 - Statement - Consolidated Statement of Changes in Stockholders&apos; Equity">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaapStatementClassOfStockAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementClassOfStockAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaapClassOfStockDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementClassOfStockAxis" xlink:to="loc_us-gaapClassOfStockDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaapClassOfStockDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementClassOfStockAxis" xlink:to="loc_us-gaapClassOfStockDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConvertiblePreferredStockMember" xlink:label="loc_us-gaapConvertiblePreferredStockMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapClassOfStockDomain" xlink:to="loc_us-gaapConvertiblePreferredStockMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaapStatementEquityComponentsAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockMember" xlink:label="loc_us-gaapPreferredStockMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapPreferredStockMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaapCommonStockMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapCommonStockMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockMember" xlink:label="loc_us-gaapTreasuryStockMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapTreasuryStockMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaapAdditionalPaidInCapitalMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapAdditionalPaidInCapitalMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaapRetainedEarningsMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapRetainedEarningsMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockholdersEquity_80" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaapSharesOutstanding_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapSharesOutstanding_80" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodValueStockOptionsExercised_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodValueStockOptionsExercised_80" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised_80" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" xlink:label="loc_us-gaapStockIssuedDuringPeriodValueShareBasedCompensationGross_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodValueShareBasedCompensationGross_80" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesShareBasedCompensationGross_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesShareBasedCompensationGross_80" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:label="loc_us-gaapStockIssuedDuringPeriodValueAcquisitions_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodValueAcquisitions_80" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesAcquisitions_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesAcquisitions_80" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapNetIncomeLoss_80" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueOther" xlink:label="loc_us-gaapStockIssuedDuringPeriodValueOther_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodValueOther_80" xlink:type="arc" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesOther" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesOther_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesOther_80" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="loc_us-gaapStockRepurchasedDuringPeriodValue_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockRepurchasedDuringPeriodValue_80" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossNetOfTax_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossNetOfTax_80" xlink:type="arc" order="13" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/StatementsOfCashFlows" xlink:title="00000006 - Statement - Consolidated Statements of Cash Flows" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/OverviewAndBasisOfPresentation" xlink:title="00000007 - Disclosure - Overview and Basis of Presentation" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SummaryOfSignificantAccountingPolicies" xlink:title="00000008 - Disclosure - Summary of Significant Accounting Policies" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstruments" xlink:title="00000009 - Disclosure - Cash, Cash Equivalents, and Financial Instruments" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BusinessCombinations" xlink:title="00000010 - Disclosure - Business Combinations" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/FairValueMeasurements" xlink:title="00000011 - Disclosure - Fair Value Measurements" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/PropertyAndEquipment" xlink:title="00000012 - Disclosure - Property and Equipment" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/GoodwillAndIntangibleAssets" xlink:title="00000013 - Disclosure - Goodwill and Intangible Assets" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/AccruedExpenses" xlink:title="00000014 - Disclosure - Accrued Expenses" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Revenue" xlink:title="00000015 - Disclosure - Revenue" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/EarningsPerShare" xlink:title="00000016 - Disclosure - Earnings per Share" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Stock-basedCompensation" xlink:title="00000017 - Disclosure - Stock-Based Compensation" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/IncomeTaxes" xlink:title="00000018 - Disclosure - Income Taxes" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/CommitmentsAndContingencies" xlink:title="00000019 - Disclosure - Commitments and Contingencies" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ShareRepurchaseProgram" xlink:title="00000020 - Disclosure - Share Repurchase Program" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SubsequentEvents" xlink:title="00000021 - Disclosure - Subsequent Events" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:title="00000022 - Disclosure - Summary of Significant Accounting Policies (Policies)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstrumentsTables" xlink:title="00000023 - Disclosure - Cash, Cash Equivalents, and Financial Instruments (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BusinessCombinationsTables" xlink:title="00000024 - Disclosure - Business Combinations (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/FairValueMeasurementsTables" xlink:title="00000025 - Disclosure - Fair Value Measurements (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/PropertyAndEquipmentTables" xlink:title="00000026 - Disclosure - Property and Equipment (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/GoodwillAndIntangibleAssetsTables" xlink:title="00000027 - Disclosure - Goodwill and Intangible Assets (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/AccruedExpensesTables" xlink:title="00000028 - Disclosure - Accrued Expenses (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/RevenueTables" xlink:title="00000029 - Disclosure - Revenue (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/EarningsPerShareTables" xlink:title="00000030 - Disclosure - Earnings per Share (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Stock-basedCompensationTables" xlink:title="00000031 - Disclosure - Stock-Based Compensation (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/IncomeTaxesTables" xlink:title="00000032 - Disclosure - Income Taxes (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/CommitmentsAndContingenciesTables" xlink:title="00000033 - Disclosure - Commitments and Contingencies (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ShareRepurchaseProgramTables" xlink:title="00000034 - Disclosure - Share Repurchase Program (Tables)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative" xlink:title="00000035 - Disclosure - Summary of Significant Accounting Policies (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductInformationLineItems" xlink:label="loc_us-gaapProductInformationLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfProductInformationTable" xlink:label="loc_us-gaapScheduleOfProductInformationTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapScheduleOfProductInformationTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis" xlink:label="loc_srtMajorCustomersAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_srtMajorCustomersAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srtNameOfMajorCustomerDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtMajorCustomersAxis" xlink:to="loc_srtNameOfMajorCustomerDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srtNameOfMajorCustomerDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtMajorCustomersAxis" xlink:to="loc_srtNameOfMajorCustomerDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_CustomersMember" xlink:label="loc_CODXCustomersMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtNameOfMajorCustomerDomain" xlink:to="loc_CODXCustomersMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_OneCustomerMember" xlink:label="loc_CODXOneCustomerMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtNameOfMajorCustomerDomain" xlink:to="loc_CODXOneCustomerMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_TwoCustomersTogetherMember" xlink:label="loc_CODXTwoCustomersTogetherMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtNameOfMajorCustomerDomain" xlink:to="loc_CODXTwoCustomersTogetherMember_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_FourCustomersMember" xlink:label="loc_CODXFourCustomersMember_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtNameOfMajorCustomerDomain" xlink:to="loc_CODXFourCustomersMember_100" xlink:type="arc" order="101" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_CustomersTogetherMember" xlink:label="loc_CODXCustomersTogetherMember_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtNameOfMajorCustomerDomain" xlink:to="loc_CODXCustomersTogetherMember_120" xlink:type="arc" order="121" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaapConcentrationRiskByTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_us-gaapConcentrationRiskByTypeAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaapConcentrationRiskTypeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapConcentrationRiskByTypeAxis" xlink:to="loc_us-gaapConcentrationRiskTypeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaapConcentrationRiskTypeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapConcentrationRiskByTypeAxis" xlink:to="loc_us-gaapConcentrationRiskTypeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaapCustomerConcentrationRiskMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConcentrationRiskTypeDomain" xlink:to="loc_us-gaapCustomerConcentrationRiskMember_40" xlink:type="arc" order="42" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaapConcentrationRiskByBenchmarkAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaapConcentrationRiskBenchmarkDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:to="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaapConcentrationRiskBenchmarkDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:to="loc_us-gaapConcentrationRiskBenchmarkDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember" xlink:label="loc_us-gaapAccountsReceivableMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:to="loc_us-gaapAccountsReceivableMember_40" xlink:type="arc" order="43" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaapSalesRevenueNetMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:to="loc_us-gaapSalesRevenueNetMember_60" xlink:type="arc" order="62" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaapAdjustmentsForNewAccountingPronouncementsAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_us-gaapAdjustmentsForNewAccountingPronouncementsAxis" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaapTypeOfAdoptionMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapAdjustmentsForNewAccountingPronouncementsAxis" xlink:to="loc_us-gaapTypeOfAdoptionMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaapTypeOfAdoptionMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapAdjustmentsForNewAccountingPronouncementsAxis" xlink:to="loc_us-gaapTypeOfAdoptionMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingStandardsUpdate201602Member" xlink:label="loc_us-gaapAccountingStandardsUpdate201602Member_140" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTypeOfAdoptionMember" xlink:to="loc_us-gaapAccountingStandardsUpdate201602Member_140" xlink:type="arc" order="141" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableGrossCurrent" xlink:label="loc_us-gaapAccountsReceivableGrossCurrent_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapAccountsReceivableGrossCurrent_160" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaapAllowanceForDoubtfulAccountsReceivableCurrent_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapAllowanceForDoubtfulAccountsReceivableCurrent_160" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaapAccountsReceivableNetCurrent_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapAccountsReceivableNetCurrent_160" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapInventoryNet_160" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoods" xlink:label="loc_us-gaapInventoryFinishedGoods_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapInventoryFinishedGoods_160" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterials" xlink:label="loc_us-gaapInventoryRawMaterials_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapInventoryRawMaterials_160" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetImpairmentCharges" xlink:label="loc_us-gaapAssetImpairmentCharges_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapAssetImpairmentCharges_160" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaapResearchAndDevelopmentExpense_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapResearchAndDevelopmentExpense_160" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaapConcentrationRiskPercentage1_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapConcentrationRiskPercentage1_160" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaapOperatingLeaseLiability_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapOperatingLeaseLiability_160" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaapOperatingLeaseRightOfUseAsset_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapOperatingLeaseRightOfUseAsset_160" xlink:type="arc" order="10" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails" xlink:title="00000036 - Disclosure - Schedule of Cash, Cash Equivalents, and Marketable Investment Securities (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsLineItems" xlink:label="loc_us-gaapCashAndCashEquivalentsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable" xlink:label="loc_us-gaapScheduleOfCashAndCashEquivalentsTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapCashAndCashEquivalentsLineItems" xlink:to="loc_us-gaapScheduleOfCashAndCashEquivalentsTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="loc_us-gaapCashAndCashEquivalentsAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfCashAndCashEquivalentsTable" xlink:to="loc_us-gaapCashAndCashEquivalentsAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="loc_us-gaapRestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapCashAndCashEquivalentsAxis" xlink:to="loc_us-gaapRestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="loc_us-gaapRestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapCashAndCashEquivalentsAxis" xlink:to="loc_us-gaapRestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashMember" xlink:label="loc_us-gaapCashMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="loc_us-gaapCashMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="loc_us-gaapMoneyMarketFundsMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="loc_us-gaapMoneyMarketFundsMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_USTreasurySecuritiesMember" xlink:label="loc_us-gaapUSTreasurySecuritiesMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="loc_us-gaapUSTreasurySecuritiesMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaapFairValueByFairValueHierarchyLevelAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfCashAndCashEquivalentsTable" xlink:to="loc_us-gaapFairValueByFairValueHierarchyLevelAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapFairValueByFairValueHierarchyLevelAxis" xlink:to="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapFairValueByFairValueHierarchyLevelAxis" xlink:to="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="loc_us-gaapFairValueInputsLevel1Member_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" xlink:to="loc_us-gaapFairValueInputsLevel1Member_20" xlink:type="arc" order="22" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="loc_us-gaapFairValueInputsLevel2Member_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" xlink:to="loc_us-gaapFairValueInputsLevel2Member_60" xlink:type="arc" order="62" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingSecuritiesDebtAmortizedCost" xlink:label="loc_us-gaapTradingSecuritiesDebtAmortizedCost_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapCashAndCashEquivalentsLineItems" xlink:to="loc_us-gaapTradingSecuritiesDebtAmortizedCost_130" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinancingReceivableAllowanceForCreditLosses" xlink:label="loc_us-gaapFinancingReceivableAllowanceForCreditLosses_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapCashAndCashEquivalentsLineItems" xlink:to="loc_us-gaapFinancingReceivableAllowanceForCreditLosses_130" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MarketableSecuritiesUnrealizedGainLoss" xlink:label="loc_us-gaapMarketableSecuritiesUnrealizedGainLoss_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapCashAndCashEquivalentsLineItems" xlink:to="loc_us-gaapMarketableSecuritiesUnrealizedGainLoss_130" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingSecurities" xlink:label="loc_us-gaapTradingSecurities_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapCashAndCashEquivalentsLineItems" xlink:to="loc_us-gaapTradingSecurities_130" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaapCashAndCashEquivalentsAtCarryingValue_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapCashAndCashEquivalentsLineItems" xlink:to="loc_us-gaapCashAndCashEquivalentsAtCarryingValue_130" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MarketableSecurities" xlink:label="loc_us-gaapMarketableSecurities_130" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapCashAndCashEquivalentsLineItems" xlink:to="loc_us-gaapMarketableSecurities_130" xlink:type="arc" order="5" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails" xlink:title="00000037 - Disclosure - Schedule of Assets and Liabilities assumed (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaapBusinessAcquisitionLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAxis" xlink:label="loc_srtRestatementAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_srtRestatementAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain" xlink:label="loc_srtRestatementDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtRestatementAxis" xlink:to="loc_srtRestatementDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain" xlink:label="loc_srtRestatementDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtRestatementAxis" xlink:to="loc_srtRestatementDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioPreviouslyReportedMember" xlink:label="loc_srtScenarioPreviouslyReportedMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRestatementDomain" xlink:to="loc_srtScenarioPreviouslyReportedMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAdjustmentMember" xlink:label="loc_srtRestatementAdjustmentMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRestatementDomain" xlink:to="loc_srtRestatementAdjustmentMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaapBusinessAcquisitionAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_us-gaapBusinessAcquisitionAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaapBusinessAcquisitionAcquireeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapBusinessAcquisitionAxis" xlink:to="loc_us-gaapBusinessAcquisitionAcquireeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaapBusinessAcquisitionAcquireeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapBusinessAcquisitionAxis" xlink:to="loc_us-gaapBusinessAcquisitionAcquireeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember" xlink:label="loc_CODXAdvancedConceptionsIncAndIdahoMolecularIncMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionAcquireeDomain" xlink:to="loc_CODXAdvancedConceptionsIncAndIdahoMolecularIncMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:label="loc_us-gaapStockIssuedDuringPeriodValueAcquisitions_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodValueAcquisitions_70" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_PaymentsToShareHoldersValueAcquisitions" xlink:label="loc_CODXPaymentsToShareHoldersValueAcquisitions_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_CODXPaymentsToShareHoldersValueAcquisitions_70" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContingentConsiderationClassifiedAsEquityFairValueDisclosure" xlink:label="loc_us-gaapContingentConsiderationClassifiedAsEquityFairValueDisclosure_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapContingentConsiderationClassifiedAsEquityFairValueDisclosure_70" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantsNotSettleableInCashFairValueDisclosure" xlink:label="loc_us-gaapWarrantsNotSettleableInCashFairValueDisclosure_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapWarrantsNotSettleableInCashFairValueDisclosure_70" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaapBusinessCombinationConsiderationTransferred1_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationConsiderationTransferred1_70" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_70" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_70" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_70" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_70" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_70" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements" xlink:label="loc_CODXBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_CODXBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_70" xlink:type="arc" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_70" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_70" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_70" xlink:type="arc" order="13" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapGoodwill_70" xlink:type="arc" order="14" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_70" xlink:type="arc" order="15" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative" xlink:title="00000038 - Disclosure - Business Combinations (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaapBusinessAcquisitionLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaapBusinessAcquisitionAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_us-gaapBusinessAcquisitionAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaapBusinessAcquisitionAcquireeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapBusinessAcquisitionAxis" xlink:to="loc_us-gaapBusinessAcquisitionAcquireeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaapBusinessAcquisitionAcquireeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapBusinessAcquisitionAxis" xlink:to="loc_us-gaapBusinessAcquisitionAcquireeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember" xlink:label="loc_CODXAdvancedConceptionsIncAndIdahoMolecularIncMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionAcquireeDomain" xlink:to="loc_CODXAdvancedConceptionsIncAndIdahoMolecularIncMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="loc_srtEquityMethodInvesteeNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="loc_srtEquityMethodInvesteeNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="loc_srtEquityMethodInvesteeNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="loc_srtEquityMethodInvesteeNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ACIAndIDMOMember" xlink:label="loc_CODXACIAndIDMOMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtEquityMethodInvesteeNameDomain" xlink:to="loc_CODXACIAndIDMOMember_20" xlink:type="arc" order="22" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_srtRangeAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember_70" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember_70" xlink:type="arc" order="71" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_StockIssuedDuringPeriodSharesExchanged" xlink:label="loc_CODXStockIssuedDuringPeriodSharesExchanged_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_CODXStockIssuedDuringPeriodSharesExchanged_90" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_StockIssuedDuringPeriodSharesContingentConsideration" xlink:label="loc_CODXStockIssuedDuringPeriodSharesContingentConsideration_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_CODXStockIssuedDuringPeriodSharesContingentConsideration_90" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" xlink:label="loc_us-gaapClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_90" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="loc_us-gaapEquityMethodInvestmentOwnershipPercentage_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentOwnershipPercentage_90" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaapBusinessCombinationConsiderationTransferred1_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationConsiderationTransferred1_90" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_90" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillPeriodIncreaseDecrease" xlink:label="loc_us-gaapGoodwillPeriodIncreaseDecrease_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapGoodwillPeriodIncreaseDecrease_90" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_RemeasurementOfAcquisitionContingencies" xlink:label="loc_CODXRemeasurementOfAcquisitionContingencies_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_CODXRemeasurementOfAcquisitionContingencies_90" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_90" xlink:type="arc" order="8" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails" xlink:title="00000039 - Disclosure - Schedule of Fair Value Assets and Liabilities (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="loc_us-gaapFairValueByMeasurementFrequencyAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="loc_us-gaapFairValueByMeasurementFrequencyAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaapFairValueMeasurementFrequencyDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapFairValueByMeasurementFrequencyAxis" xlink:to="loc_us-gaapFairValueMeasurementFrequencyDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaapFairValueMeasurementFrequencyDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapFairValueByMeasurementFrequencyAxis" xlink:to="loc_us-gaapFairValueMeasurementFrequencyDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="loc_us-gaapFairValueMeasurementsRecurringMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueMeasurementFrequencyDomain" xlink:to="loc_us-gaapFairValueMeasurementsRecurringMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaapFairValueByFairValueHierarchyLevelAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="loc_us-gaapFairValueByFairValueHierarchyLevelAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapFairValueByFairValueHierarchyLevelAxis" xlink:to="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapFairValueByFairValueHierarchyLevelAxis" xlink:to="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="loc_us-gaapFairValueInputsLevel1Member_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" xlink:to="loc_us-gaapFairValueInputsLevel1Member_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="loc_us-gaapFairValueInputsLevel2Member_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" xlink:to="loc_us-gaapFairValueInputsLevel2Member_10" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="loc_us-gaapFairValueInputsLevel3Member_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" xlink:to="loc_us-gaapFairValueInputsLevel3Member_20" xlink:type="arc" order="22" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:label="loc_us-gaapCashAndCashEquivalentsFairValueDisclosure_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="loc_us-gaapCashAndCashEquivalentsFairValueDisclosure_90" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MarketableSecurities" xlink:label="loc_us-gaapMarketableSecurities_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="loc_us-gaapMarketableSecurities_90" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="loc_us-gaapAssetsFairValueDisclosure_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="loc_us-gaapAssetsFairValueDisclosure_90" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_FairValueOfContingentConsiderationToCommonStock" xlink:label="loc_CODXFairValueOfContingentConsiderationToCommonStock_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="loc_CODXFairValueOfContingentConsiderationToCommonStock_90" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_FairValueOfContingentConsiderationToWarrants" xlink:label="loc_CODXFairValueOfContingentConsiderationToWarrants_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="loc_CODXFairValueOfContingentConsiderationToWarrants_90" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesFairValueDisclosure" xlink:label="loc_us-gaapLiabilitiesFairValueDisclosure_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="loc_us-gaapLiabilitiesFairValueDisclosure_90" xlink:type="arc" order="5" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfChangesInFairValueMeasurementDetails" xlink:title="00000040 - Disclosure - Schedule of Changes in Fair Value Measurement (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails" xlink:title="00000041 - Disclosure - Schedule of Contingent Consideration Common Stock and Warrants (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" xlink:label="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable" xlink:label="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" xlink:to="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeAxis" xlink:label="loc_us-gaapMeasurementInputTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable" xlink:to="loc_us-gaapMeasurementInputTypeAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeDomain" xlink:label="loc_us-gaapMeasurementInputTypeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapMeasurementInputTypeAxis" xlink:to="loc_us-gaapMeasurementInputTypeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeDomain" xlink:label="loc_us-gaapMeasurementInputTypeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapMeasurementInputTypeAxis" xlink:to="loc_us-gaapMeasurementInputTypeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputSharePriceMember" xlink:label="loc_us-gaapMeasurementInputSharePriceMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_us-gaapMeasurementInputSharePriceMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputStrikePriceMember" xlink:label="loc_CODXMeasurementInputStrikePriceMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_CODXMeasurementInputStrikePriceMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputPriceVolatilityMember" xlink:label="loc_us-gaapMeasurementInputPriceVolatilityMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_us-gaapMeasurementInputPriceVolatilityMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputRiskFreeInterestRateMember" xlink:label="loc_us-gaapMeasurementInputRiskFreeInterestRateMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_us-gaapMeasurementInputRiskFreeInterestRateMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputExpectedTermMember" xlink:label="loc_us-gaapMeasurementInputExpectedTermMember_100" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_us-gaapMeasurementInputExpectedTermMember_100" xlink:type="arc" order="101" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputCostOfCapitalMember" xlink:label="loc_CODXMeasurementInputCostOfCapitalMember_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_CODXMeasurementInputCostOfCapitalMember_120" xlink:type="arc" order="121" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputDiscountRateMember" xlink:label="loc_us-gaapMeasurementInputDiscountRateMember_140" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_us-gaapMeasurementInputDiscountRateMember_140" xlink:type="arc" order="141" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputEquityVolatilityMember" xlink:label="loc_CODXMeasurementInputEquityVolatilityMember_160" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_CODXMeasurementInputEquityVolatilityMember_160" xlink:type="arc" order="161" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputAssetVolatilityMember" xlink:label="loc_CODXMeasurementInputAssetVolatilityMember_180" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_CODXMeasurementInputAssetVolatilityMember_180" xlink:type="arc" order="181" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputRevenueVolatilityMember" xlink:label="loc_CODXMeasurementInputRevenueVolatilityMember_200" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_CODXMeasurementInputRevenueVolatilityMember_200" xlink:type="arc" order="201" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantsAndRightsOutstandingMeasurementInput" xlink:label="loc_us-gaapWarrantsAndRightsOutstandingMeasurementInput_230" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" xlink:to="loc_us-gaapWarrantsAndRightsOutstandingMeasurementInput_230" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantsAndRightsOutstandingTerm" xlink:label="loc_us-gaapWarrantsAndRightsOutstandingTerm_230" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" xlink:to="loc_us-gaapWarrantsAndRightsOutstandingTerm_230" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityMeasurementInput" xlink:label="loc_us-gaapBusinessCombinationContingentConsiderationLiabilityMeasurementInput_230" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" xlink:to="loc_us-gaapBusinessCombinationContingentConsiderationLiabilityMeasurementInput_230" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm" xlink:label="loc_CODXBusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_230" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" xlink:to="loc_CODXBusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_230" xlink:type="arc" order="3" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails" xlink:title="00000042 - Disclosure - Schedule of Property and Equipment (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaapPropertyPlantAndEquipmentLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquipmentMember" xlink:label="loc_us-gaapEquipmentMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapEquipmentMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdsAndLeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdsAndLeaseholdImprovementsMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLeaseholdsAndLeaseholdImprovementsMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdImprovementsMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLeaseholdImprovementsMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OfficeEquipmentMember" xlink:label="loc_us-gaapOfficeEquipmentMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapOfficeEquipmentMember_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_srtRangeAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember_0" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember_10" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="loc_us-gaapPropertyPlantAndEquipmentUsefulLife_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentUsefulLife_150" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaapPropertyPlantAndEquipmentGross_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentGross_150" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_150" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet_150" xlink:type="arc" order="3" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfGoodwillDetails" xlink:title="00000043 - Disclosure - Schedule of Goodwill (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails" xlink:title="00000044 - Disclosure - Schedule of Intangible Assets, Net (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InProcessResearchAndDevelopmentMember" xlink:label="loc_us-gaapInProcessResearchAndDevelopmentMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_us-gaapInProcessResearchAndDevelopmentMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="loc_us-gaapNoncompeteAgreementsMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_us-gaapNoncompeteAgreementsMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_IndefiniteLivedIntangibleAssetUsefulLife" xlink:label="loc_CODXIndefiniteLivedIntangibleAssetUsefulLife_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_CODXIndefiniteLivedIntangibleAssetUsefulLife_110" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsGross_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsGross_110" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAccumulatedAmortization_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAccumulatedAmortization_110" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaapIntangibleAssetsNetExcludingGoodwill_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapIntangibleAssetsNetExcludingGoodwill_110" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetUsefulLife_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetUsefulLife_110" xlink:type="arc" order="4" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails" xlink:title="00000045 - Disclosure - Schedule of Future Amortization Expense (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/GoodwillAndIntangibleAssetsDetailsNarrative" xlink:title="00000046 - Disclosure - Goodwill and Intangible Assets (Details Narrative)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails" xlink:title="00000047 - Disclosure - Schedule of Accrued Expenses (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails" xlink:title="00000048 - Disclosure - Summary of Revenue by Geographic Area (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaapDisaggregationOfRevenueLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaapDisaggregationOfRevenueTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapDisaggregationOfRevenueTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srtStatementGeographicalAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_srtStatementGeographicalAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US" xlink:label="loc_countryUS_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryUS_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_RestOfWorldMember" xlink:label="loc_CODXRestOfWorldMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_CODXRestOfWorldMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaapConcentrationRiskByBenchmarkAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaapConcentrationRiskBenchmarkDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:to="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaapConcentrationRiskBenchmarkDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:to="loc_us-gaapConcentrationRiskBenchmarkDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaapSalesRevenueNetMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:to="loc_us-gaapSalesRevenueNetMember_60" xlink:type="arc" order="62" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaapConcentrationRiskByTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_us-gaapConcentrationRiskByTypeAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaapConcentrationRiskTypeDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapConcentrationRiskByTypeAxis" xlink:to="loc_us-gaapConcentrationRiskTypeDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaapConcentrationRiskTypeDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapConcentrationRiskByTypeAxis" xlink:to="loc_us-gaapConcentrationRiskTypeDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="loc_us-gaapGeographicConcentrationRiskMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapConcentrationRiskTypeDomain" xlink:to="loc_us-gaapGeographicConcentrationRiskMember_60" xlink:type="arc" order="63" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax_110" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaapConcentrationRiskPercentage1_110" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapConcentrationRiskPercentage1_110" xlink:type="arc" order="1" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfDeferredRevenueDetails" xlink:title="00000049 - Disclosure - Schedule of Deferred Revenue (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails" xlink:title="00000050 - Disclosure - Schedule of Basic and Diluted Earnings Per Share (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/EarningsPerShareDetailsNarrative" xlink:title="00000051 - Disclosure - Earnings per Share (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="loc_us-gaapScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="loc_us-gaapScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaapStatementEquityComponentsAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaapCommonStockMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapCommonStockMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantMember" xlink:label="loc_us-gaapWarrantMember_30" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapWarrantMember_30" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="loc_us-gaapAntidilutiveSecuritiesNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="loc_us-gaapAntidilutiveSecuritiesNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="loc_us-gaapAntidilutiveSecuritiesNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="loc_us-gaapAntidilutiveSecuritiesNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaapRestrictedStockUnitsRSUMember_50" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAntidilutiveSecuritiesNameDomain" xlink:to="loc_us-gaapRestrictedStockUnitsRSUMember_50" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaapEmployeeStockOptionMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAntidilutiveSecuritiesNameDomain" xlink:to="loc_us-gaapEmployeeStockOptionMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_80" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfOptionActivityDetails" xlink:title="00000052 - Disclosure - Schedule of Option Activity (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails" xlink:title="00000053 - Disclosure - Schedule of Outstanding Restricted Stock Units and Related Activity (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaapAwardTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapAwardTypeAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaapRestrictedStockUnitsRSUMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaapRestrictedStockUnitsRSUMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_60" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_60" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_60" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_60" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_60" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_60" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_60" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_60" xlink:type="arc" order="7" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails" xlink:title="00000054 - Disclosure - Schedule of Warrant Activity (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails" xlink:title="00000055 - Disclosure - Schedule of Recognized Stock-based Compensation Expense (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaapAwardTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapAwardTypeAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaapEmployeeStockOptionMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaapEmployeeStockOptionMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaapRestrictedStockUnitsRSUMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaapRestrictedStockUnitsRSUMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockCompensationPlanMember" xlink:label="loc_us-gaapStockCompensationPlanMember_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaapStockCompensationPlanMember_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaapAllocatedShareBasedCompensationExpense_90" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapAllocatedShareBasedCompensationExpense_90" xlink:type="arc" order="0" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative" xlink:title="00000056 - Disclosure - Stock-Based Compensation (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaapPlanNameAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapPlanNameAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapPlanNameAxis" xlink:to="loc_us-gaapPlanNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapPlanNameAxis" xlink:to="loc_us-gaapPlanNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_TwoThousandFifteenLongTermIncentivePlanMember" xlink:label="loc_CODXTwoThousandFifteenLongTermIncentivePlanMember_0" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPlanNameDomain" xlink:to="loc_CODXTwoThousandFifteenLongTermIncentivePlanMember_0" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaapAwardTypeAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapAwardTypeAxis" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_StockOptionsMember" xlink:label="loc_CODXStockOptionsMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_CODXStockOptionsMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaapRestrictedStockUnitsRSUMember_60" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaapRestrictedStockUnitsRSUMember_60" xlink:type="arc" order="61" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember" xlink:label="loc_us-gaapRestrictedStockMember_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaapRestrictedStockMember_120" xlink:type="arc" order="122" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaapStatementEquityComponentsAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantMember" xlink:label="loc_us-gaapWarrantMember_80" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapWarrantMember_80" xlink:type="arc" order="81" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srtTitleOfIndividualAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_srtTitleOfIndividualAxis" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtTitleOfIndividualAxis" xlink:to="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srtTitleOfIndividualWithRelationshipToEntityDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_srtTitleOfIndividualAxis" xlink:to="loc_srtTitleOfIndividualWithRelationshipToEntityDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ThirdPartiesMember" xlink:label="loc_CODXThirdPartiesMember_120" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:to="loc_CODXThirdPartiesMember_120" xlink:type="arc" order="121" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_150" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_150" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_150" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_150" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_150" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_CODXShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_CODXShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue_150" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ClassOfWarrantExercisable" xlink:label="loc_CODXClassOfWarrantExercisable_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_CODXClassOfWarrantExercisable_150" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightOutstanding" xlink:label="loc_us-gaapClassOfWarrantOrRightOutstanding_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapClassOfWarrantOrRightOutstanding_150" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesIssuedForServices" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesIssuedForServices_150" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesIssuedForServices_150" xlink:type="arc" order="8" />
    </link:definitionLink>
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails" xlink:title="00000057 - Disclosure - Schedule of Components Income Tax Provision (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails" xlink:title="00000058 - Disclosure - Schedule of Benefit from Income Taxes and Effective Tax Rates (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails" xlink:title="00000059 - Disclosure - Schedule of Deferred Tax Assets (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfUnrecognizedTaxBenefitsDetails" xlink:title="00000060 - Disclosure - Schedule of Unrecognized Tax Benefits (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/IncomeTaxesDetailsNarrative" xlink:title="00000061 - Disclosure - Income Taxes (Details Narrative)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails" xlink:title="00000062 - Disclosure - Schedule of Lease Expense (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails" xlink:title="00000063 - Disclosure - Schedule of Maturities on Company Lease Liabilities (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfOtherInformationRelatedToOperatingLeaseDetails" xlink:title="00000064 - Disclosure - Schedule of Other Information Related to Operating Lease (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfTreasuryStockDetails" xlink:title="00000065 - Disclosure - Schedule of Treasury Stock (Details)" />
    <link:definitionLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ShareRepurchaseProgramDetailsNarrative" xlink:title="00000066 - Disclosure - Share Repurchase Program (Details Narrative)" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>11
<FILENAME>codx-20221231_lab.xml
<DESCRIPTION>INLINE XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.17c -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" roleURI="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" roleURI="http://www.xbrl.org/2009/role/netLabel" />
    <link:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_StatementClassOfStockAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementClassOfStockAxis_lbl" xml:lang="en-US">Class of Stock [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConvertiblePreferredStockMember" xlink:label="us-gaap_ConvertiblePreferredStockMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConvertiblePreferredStockMember" xlink:to="us-gaap_ConvertiblePreferredStockMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConvertiblePreferredStockMember_lbl" xml:lang="en-US">Convertible Preferred Stock [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementEquityComponentsAxis_lbl" xml:lang="en-US">Equity Components [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockMember" xlink:label="us-gaap_PreferredStockMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockMember" xlink:to="us-gaap_PreferredStockMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockMember_lbl" xml:lang="en-US">Preferred Stock [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockMember_lbl" xml:lang="en-US">Common Stock [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockMember" xlink:label="us-gaap_TreasuryStockMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockMember" xlink:to="us-gaap_TreasuryStockMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TreasuryStockMember_lbl" xml:lang="en-US">Treasury Stock [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdditionalPaidInCapitalMember_lbl" xml:lang="en-US">Additional Paid-in Capital [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl" xml:lang="en-US">AOCI Attributable to Parent [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetainedEarningsMember_lbl" xml:lang="en-US">Retained Earnings [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_MajorCustomersAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MajorCustomersAxis_lbl" xml:lang="en-US">Customer [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_CustomersMember" xlink:label="CODX_CustomersMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_CustomersMember" xlink:to="CODX_CustomersMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_CustomersMember_lbl" xml:lang="en-US">Customers [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskByTypeAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskByTypeAxis_lbl" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerConcentrationRiskMember" xlink:to="us-gaap_CustomerConcentrationRiskMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CustomerConcentrationRiskMember_lbl" xml:lang="en-US">Customer Concentration Risk [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis_lbl" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember" xlink:label="us-gaap_AccountsReceivableMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableMember" xlink:to="us-gaap_AccountsReceivableMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableMember_lbl" xml:lang="en-US">Accounts Receivable [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_OneCustomerMember" xlink:label="CODX_OneCustomerMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_OneCustomerMember" xlink:to="CODX_OneCustomerMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_OneCustomerMember_lbl" xml:lang="en-US">One Customer [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesRevenueNetMember" xlink:to="us-gaap_SalesRevenueNetMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SalesRevenueNetMember_lbl" xml:lang="en-US">Revenue Benchmark [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_TwoCustomersTogetherMember" xlink:label="CODX_TwoCustomersTogetherMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_TwoCustomersTogetherMember" xlink:to="CODX_TwoCustomersTogetherMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_TwoCustomersTogetherMember_lbl" xml:lang="en-US">Two Customers Together [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_FourCustomersMember" xlink:label="CODX_FourCustomersMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_FourCustomersMember" xlink:to="CODX_FourCustomersMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_FourCustomersMember_lbl" xml:lang="en-US">Four Customers [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_CustomersTogetherMember" xlink:label="CODX_CustomersTogetherMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_CustomersTogetherMember" xlink:to="CODX_CustomersTogetherMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_CustomersTogetherMember_lbl" xml:lang="en-US">Customers Together [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:to="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_lbl" xml:lang="en-US">Accounting Standards Update [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingStandardsUpdate201602Member" xlink:label="us-gaap_AccountingStandardsUpdate201602Member" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingStandardsUpdate201602Member" xlink:to="us-gaap_AccountingStandardsUpdate201602Member_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountingStandardsUpdate201602Member_lbl" xml:lang="en-US">Accounting Standards Update 2016-02 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="us-gaap_CashAndCashEquivalentsAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAxis" xlink:to="us-gaap_CashAndCashEquivalentsAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsAxis_lbl" xml:lang="en-US">Cash and Cash Equivalents [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashMember" xlink:label="us-gaap_CashMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashMember" xlink:to="us-gaap_CashMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashMember_lbl" xml:lang="en-US">Cash [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="us-gaap_MoneyMarketFundsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MoneyMarketFundsMember" xlink:to="us-gaap_MoneyMarketFundsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MoneyMarketFundsMember_lbl" xml:lang="en-US">Money Market Funds [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis_lbl" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="us-gaap_FairValueInputsLevel1Member" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueInputsLevel1Member" xlink:to="us-gaap_FairValueInputsLevel1Member_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueInputsLevel1Member_lbl" xml:lang="en-US">Fair Value, Inputs, Level 1 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_USTreasurySecuritiesMember" xlink:label="us-gaap_USTreasurySecuritiesMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_USTreasurySecuritiesMember" xlink:to="us-gaap_USTreasurySecuritiesMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_USTreasurySecuritiesMember_lbl" xml:lang="en-US">US Treasury Securities [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="us-gaap_FairValueInputsLevel2Member" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueInputsLevel2Member" xlink:to="us-gaap_FairValueInputsLevel2Member_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueInputsLevel2Member_lbl" xml:lang="en-US">Fair Value, Inputs, Level 2 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessAcquisitionAxis_lbl" xml:lang="en-US">Business Acquisition [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember" xlink:label="CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember" xlink:to="CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember_lbl" xml:lang="en-US">Advanced Conceptions, Inc. and Idaho Molecular, Inc. [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_lbl" xml:lang="en-US">Investment, Name [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ACIAndIDMOMember" xlink:label="CODX_ACIAndIDMOMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ACIAndIDMOMember" xlink:to="CODX_ACIAndIDMOMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ACIAndIDMOMember_lbl" xml:lang="en-US">ACI And IDMO [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeAxis" xlink:to="srt_RangeAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RangeAxis_lbl" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MinimumMember" xlink:to="srt_MinimumMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MinimumMember_lbl" xml:lang="en-US">Minimum [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MaximumMember" xlink:to="srt_MaximumMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MaximumMember_lbl" xml:lang="en-US">Maximum [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAxis" xlink:label="srt_RestatementAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RestatementAxis" xlink:to="srt_RestatementAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RestatementAxis_lbl" xml:lang="en-US">Revision of Prior Period [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioPreviouslyReportedMember" xlink:label="srt_ScenarioPreviouslyReportedMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ScenarioPreviouslyReportedMember" xlink:to="srt_ScenarioPreviouslyReportedMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ScenarioPreviouslyReportedMember_lbl" xml:lang="en-US">Previously Reported [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAdjustmentMember" xlink:label="srt_RestatementAdjustmentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RestatementAdjustmentMember" xlink:to="srt_RestatementAdjustmentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RestatementAdjustmentMember_lbl" xml:lang="en-US">Revision of Prior Period, Adjustment [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="us-gaap_FairValueByMeasurementFrequencyAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueByMeasurementFrequencyAxis" xlink:to="us-gaap_FairValueByMeasurementFrequencyAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueByMeasurementFrequencyAxis_lbl" xml:lang="en-US">Measurement Frequency [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="us-gaap_FairValueMeasurementsRecurringMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementsRecurringMember" xlink:to="us-gaap_FairValueMeasurementsRecurringMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueMeasurementsRecurringMember_lbl" xml:lang="en-US">Fair Value, Recurring [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueInputsLevel3Member" xlink:to="us-gaap_FairValueInputsLevel3Member_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueInputsLevel3Member_lbl" xml:lang="en-US">Fair Value, Inputs, Level 3 [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeAxis" xlink:label="us-gaap_MeasurementInputTypeAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MeasurementInputTypeAxis" xlink:to="us-gaap_MeasurementInputTypeAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MeasurementInputTypeAxis_lbl" xml:lang="en-US">Measurement Input Type [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputSharePriceMember" xlink:label="us-gaap_MeasurementInputSharePriceMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MeasurementInputSharePriceMember" xlink:to="us-gaap_MeasurementInputSharePriceMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MeasurementInputSharePriceMember_lbl" xml:lang="en-US">Measurement Input, Share Price [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputStrikePriceMember" xlink:label="CODX_MeasurementInputStrikePriceMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_MeasurementInputStrikePriceMember" xlink:to="CODX_MeasurementInputStrikePriceMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_MeasurementInputStrikePriceMember_lbl" xml:lang="en-US">Measurement Input Strike Price [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputPriceVolatilityMember" xlink:label="us-gaap_MeasurementInputPriceVolatilityMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MeasurementInputPriceVolatilityMember" xlink:to="us-gaap_MeasurementInputPriceVolatilityMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MeasurementInputPriceVolatilityMember_lbl" xml:lang="en-US">Measurement Input, Price Volatility [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputRiskFreeInterestRateMember" xlink:label="us-gaap_MeasurementInputRiskFreeInterestRateMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MeasurementInputRiskFreeInterestRateMember" xlink:to="us-gaap_MeasurementInputRiskFreeInterestRateMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MeasurementInputRiskFreeInterestRateMember_lbl" xml:lang="en-US">Measurement Input, Risk Free Interest Rate [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputExpectedTermMember" xlink:label="us-gaap_MeasurementInputExpectedTermMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MeasurementInputExpectedTermMember" xlink:to="us-gaap_MeasurementInputExpectedTermMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MeasurementInputExpectedTermMember_lbl" xml:lang="en-US">Measurement Input, Expected Term [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputCostOfCapitalMember" xlink:label="CODX_MeasurementInputCostOfCapitalMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_MeasurementInputCostOfCapitalMember" xlink:to="CODX_MeasurementInputCostOfCapitalMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_MeasurementInputCostOfCapitalMember_lbl" xml:lang="en-US">Measurement Input Cost of Capital [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputDiscountRateMember" xlink:label="us-gaap_MeasurementInputDiscountRateMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MeasurementInputDiscountRateMember" xlink:to="us-gaap_MeasurementInputDiscountRateMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MeasurementInputDiscountRateMember_lbl" xml:lang="en-US">Measurement Input, Discount Rate [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputEquityVolatilityMember" xlink:label="CODX_MeasurementInputEquityVolatilityMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_MeasurementInputEquityVolatilityMember" xlink:to="CODX_MeasurementInputEquityVolatilityMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_MeasurementInputEquityVolatilityMember_lbl" xml:lang="en-US">Measurement Input Equity Volatility [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputAssetVolatilityMember" xlink:label="CODX_MeasurementInputAssetVolatilityMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_MeasurementInputAssetVolatilityMember" xlink:to="CODX_MeasurementInputAssetVolatilityMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_MeasurementInputAssetVolatilityMember_lbl" xml:lang="en-US">Measurement Input Asset Volatility [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputRevenueVolatilityMember" xlink:label="CODX_MeasurementInputRevenueVolatilityMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_MeasurementInputRevenueVolatilityMember" xlink:to="CODX_MeasurementInputRevenueVolatilityMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_MeasurementInputRevenueVolatilityMember_lbl" xml:lang="en-US">Measurement Input Revenue Volatility [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl" xml:lang="en-US">Long-Lived Tangible Asset [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquipmentMember" xlink:label="us-gaap_EquipmentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquipmentMember" xlink:to="us-gaap_EquipmentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquipmentMember_lbl" xml:lang="en-US">Equipment [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdsAndLeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdsAndLeaseholdImprovementsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseholdsAndLeaseholdImprovementsMember" xlink:to="us-gaap_LeaseholdsAndLeaseholdImprovementsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LeaseholdsAndLeaseholdImprovementsMember_lbl" xml:lang="en-US">Leaseholds and Leasehold Improvements [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseholdImprovementsMember" xlink:to="us-gaap_LeaseholdImprovementsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LeaseholdImprovementsMember_lbl" xml:lang="en-US">Leasehold Improvements [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OfficeEquipmentMember" xlink:label="us-gaap_OfficeEquipmentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OfficeEquipmentMember" xlink:to="us-gaap_OfficeEquipmentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OfficeEquipmentMember_lbl" xml:lang="en-US">Office Equipment [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InProcessResearchAndDevelopmentMember" xlink:label="us-gaap_InProcessResearchAndDevelopmentMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InProcessResearchAndDevelopmentMember" xlink:to="us-gaap_InProcessResearchAndDevelopmentMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InProcessResearchAndDevelopmentMember_lbl" xml:lang="en-US">In Process Research and Development [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncompeteAgreementsMember" xlink:to="us-gaap_NoncompeteAgreementsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NoncompeteAgreementsMember_lbl" xml:lang="en-US">Noncompete Agreements [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_StatementGeographicalAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_StatementGeographicalAxis_lbl" xml:lang="en-US">Geographical [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US" xlink:label="country_US" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_US" xlink:to="country_US_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="country_US_lbl" xml:lang="en-US">UNITED STATES</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_RestOfWorldMember" xlink:label="CODX_RestOfWorldMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_RestOfWorldMember" xlink:to="CODX_RestOfWorldMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_RestOfWorldMember_lbl" xml:lang="en-US">Rest of World [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="us-gaap_GeographicConcentrationRiskMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeographicConcentrationRiskMember" xlink:to="us-gaap_GeographicConcentrationRiskMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GeographicConcentrationRiskMember_lbl" xml:lang="en-US">Geographic Concentration Risk [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantMember" xlink:label="us-gaap_WarrantMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WarrantMember" xlink:to="us-gaap_WarrantMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WarrantMember_lbl" xml:lang="en-US">Warrant [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_lbl" xml:lang="en-US">Antidilutive Securities [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedStockUnitsRSUMember" xlink:to="us-gaap_RestrictedStockUnitsRSUMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RestrictedStockUnitsRSUMember_lbl" xml:lang="en-US">Restricted Stock Units (RSUs) [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOptionMember" xlink:to="us-gaap_EmployeeStockOptionMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeStockOptionMember_lbl" xml:lang="en-US">Share-Based Payment Arrangement, Option [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PlanNameAxis_lbl" xml:lang="en-US">Plan Name [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_TwoThousandFifteenLongTermIncentivePlanMember" xlink:label="CODX_TwoThousandFifteenLongTermIncentivePlanMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_TwoThousandFifteenLongTermIncentivePlanMember" xlink:to="CODX_TwoThousandFifteenLongTermIncentivePlanMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_TwoThousandFifteenLongTermIncentivePlanMember_lbl" xml:lang="en-US">2015 Long Term Incentive Plan [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_AwardTypeAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AwardTypeAxis_lbl" xml:lang="en-US">Award Type [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_StockOptionsMember" xlink:label="CODX_StockOptionsMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_StockOptionsMember" xlink:to="CODX_StockOptionsMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_StockOptionsMember_lbl" xml:lang="en-US">Stock Options [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualAxis_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_TitleOfIndividualAxis_lbl" xml:lang="en-US">Title of Individual [Axis]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ThirdPartiesMember" xlink:label="CODX_ThirdPartiesMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ThirdPartiesMember" xlink:to="CODX_ThirdPartiesMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ThirdPartiesMember_lbl" xml:lang="en-US">Third Parties [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedStockMember" xlink:to="us-gaap_RestrictedStockMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RestrictedStockMember_lbl" xml:lang="en-US">Restricted Stock [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockCompensationPlanMember" xlink:label="us-gaap_StockCompensationPlanMember" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockCompensationPlanMember" xlink:to="us-gaap_StockCompensationPlanMember_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockCompensationPlanMember_lbl" xml:lang="en-US">Share-Based Payment Arrangement [Member]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CoverAbstract" xlink:to="dei_CoverAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CoverAbstract_lbl" xml:lang="en-US">Cover [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType" xlink:label="dei_DocumentType" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentType_lbl" xml:lang="en-US">Document Type</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentFlag_lbl" xml:lang="en-US">Amendment Flag</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentDescription" xlink:label="dei_AmendmentDescription" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentDescription" xlink:to="dei_AmendmentDescription_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentDescription_lbl" xml:lang="en-US">Amendment Description</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentRegistrationStatement" xlink:label="dei_DocumentRegistrationStatement" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentRegistrationStatement" xlink:to="dei_DocumentRegistrationStatement_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentRegistrationStatement_lbl" xml:lang="en-US">Document Registration Statement</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAnnualReport" xlink:to="dei_DocumentAnnualReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentAnnualReport_lbl" xml:lang="en-US">Document Annual Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentQuarterlyReport" xlink:to="dei_DocumentQuarterlyReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentQuarterlyReport_lbl" xml:lang="en-US">Document Quarterly Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentTransitionReport_lbl" xml:lang="en-US">Document Transition Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentShellCompanyReport" xlink:label="dei_DocumentShellCompanyReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentShellCompanyReport" xlink:to="dei_DocumentShellCompanyReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentShellCompanyReport_lbl" xml:lang="en-US">Document Shell Company Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentShellCompanyEventDate" xlink:label="dei_DocumentShellCompanyEventDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentShellCompanyEventDate" xlink:to="dei_DocumentShellCompanyEventDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentShellCompanyEventDate_lbl" xml:lang="en-US">Document Shell Company Event Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodStartDate" xlink:label="dei_DocumentPeriodStartDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodStartDate" xlink:to="dei_DocumentPeriodStartDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodStartDate_lbl" xml:lang="en-US">Document Period Start Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodEndDate_lbl" xml:lang="en-US">Document Period End Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xml:lang="en-US">Document Fiscal Period Focus</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalYearFocus_lbl" xml:lang="en-US">Document Fiscal Year Focus</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CurrentFiscalYearEndDate_lbl" xml:lang="en-US">Current Fiscal Year End Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFileNumber_lbl" xml:lang="en-US">Entity File Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityRegistrantName_lbl" xml:lang="en-US">Entity Registrant Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCentralIndexKey_lbl" xml:lang="en-US">Entity Central Index Key</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityPrimarySicNumber" xlink:label="dei_EntityPrimarySicNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPrimarySicNumber" xlink:to="dei_EntityPrimarySicNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityPrimarySicNumber_lbl" xml:lang="en-US">Entity Primary SIC Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xml:lang="en-US">Entity Tax Identification Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine1_lbl" xml:lang="en-US">Entity Address, Address Line One</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine2" xlink:label="dei_EntityAddressAddressLine2" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine2" xlink:to="dei_EntityAddressAddressLine2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine2_lbl" xml:lang="en-US">Entity Address, Address Line Two</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine3" xlink:label="dei_EntityAddressAddressLine3" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine3" xlink:to="dei_EntityAddressAddressLine3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine3_lbl" xml:lang="en-US">Entity Address, Address Line Three</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCityOrTown_lbl" xml:lang="en-US">Entity Address, City or Town</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressStateOrProvince_lbl" xml:lang="en-US">Entity Address, State or Province</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCountry" xlink:label="dei_EntityAddressCountry" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCountry" xlink:to="dei_EntityAddressCountry_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCountry_lbl" xml:lang="en-US">Entity Address, Country</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressPostalZipCode_lbl" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CountryRegion" xlink:label="dei_CountryRegion" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CountryRegion" xlink:to="dei_CountryRegion_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CountryRegion_lbl" xml:lang="en-US">Country Region</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CityAreaCode_lbl" xml:lang="en-US">City Area Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_LocalPhoneNumber_lbl" xml:lang="en-US">Local Phone Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Extension" xlink:label="dei_Extension" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Extension" xlink:to="dei_Extension_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Extension_lbl" xml:lang="en-US">Extension</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_WrittenCommunications" xlink:label="dei_WrittenCommunications" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_WrittenCommunications" xlink:to="dei_WrittenCommunications_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_WrittenCommunications_lbl" xml:lang="en-US">Written Communications</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SolicitingMaterial" xlink:label="dei_SolicitingMaterial" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SolicitingMaterial" xlink:to="dei_SolicitingMaterial_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SolicitingMaterial_lbl" xml:lang="en-US">Soliciting Material</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_PreCommencementTenderOffer" xlink:label="dei_PreCommencementTenderOffer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementTenderOffer" xlink:to="dei_PreCommencementTenderOffer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementTenderOffer_lbl" xml:lang="en-US">Pre-commencement Tender Offer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="dei_PreCommencementIssuerTenderOffer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementIssuerTenderOffer" xlink:to="dei_PreCommencementIssuerTenderOffer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementIssuerTenderOffer_lbl" xml:lang="en-US">Pre-commencement Issuer Tender Offer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12bTitle_lbl" xml:lang="en-US">Title of 12(b) Security</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_NoTradingSymbolFlag" xlink:label="dei_NoTradingSymbolFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_NoTradingSymbolFlag" xlink:to="dei_NoTradingSymbolFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_NoTradingSymbolFlag_lbl" xml:lang="en-US">No Trading Symbol Flag</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_TradingSymbol_lbl" xml:lang="en-US">Trading Symbol</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityExchangeName_lbl" xml:lang="en-US">Security Exchange Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12gTitle" xlink:label="dei_Security12gTitle" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12gTitle" xlink:to="dei_Security12gTitle_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12gTitle_lbl" xml:lang="en-US">Title of 12(g) Security</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityReportingObligation" xlink:label="dei_SecurityReportingObligation" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityReportingObligation" xlink:to="dei_SecurityReportingObligation_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityReportingObligation_lbl" xml:lang="en-US">Security Reporting Obligation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AnnualInformationForm" xlink:label="dei_AnnualInformationForm" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AnnualInformationForm" xlink:to="dei_AnnualInformationForm_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AnnualInformationForm_lbl" xml:lang="en-US">Annual Information Form</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditedAnnualFinancialStatements" xlink:label="dei_AuditedAnnualFinancialStatements" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditedAnnualFinancialStatements" xlink:to="dei_AuditedAnnualFinancialStatements_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditedAnnualFinancialStatements_lbl" xml:lang="en-US">Audited Annual Financial Statements</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityWellKnownSeasonedIssuer" xlink:to="dei_EntityWellKnownSeasonedIssuer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityWellKnownSeasonedIssuer_lbl" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityVoluntaryFilers" xlink:to="dei_EntityVoluntaryFilers_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityVoluntaryFilers_lbl" xml:lang="en-US">Entity Voluntary Filers</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCurrentReportingStatus_lbl" xml:lang="en-US">Entity Current Reporting Status</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityInteractiveDataCurrent_lbl" xml:lang="en-US">Entity Interactive Data Current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFilerCategory_lbl" xml:lang="en-US">Entity Filer Category</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntitySmallBusiness_lbl" xml:lang="en-US">Entity Small Business</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xml:lang="en-US">Entity Emerging Growth Company</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityExTransitionPeriod" xlink:label="dei_EntityExTransitionPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityExTransitionPeriod" xlink:to="dei_EntityExTransitionPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityExTransitionPeriod_lbl" xml:lang="en-US">Elected Not To Use the Extended Transition Period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentAccountingStandard" xlink:label="dei_DocumentAccountingStandard" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAccountingStandard" xlink:to="dei_DocumentAccountingStandard_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentAccountingStandard_lbl" xml:lang="en-US">Document Accounting Standard</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_OtherReportingStandardItemNumber" xlink:label="dei_OtherReportingStandardItemNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_OtherReportingStandardItemNumber" xlink:to="dei_OtherReportingStandardItemNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_OtherReportingStandardItemNumber_lbl" xml:lang="en-US">Other Reporting Standard Item Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityShellCompany_lbl" xml:lang="en-US">Entity Shell Company</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPublicFloat" xlink:to="dei_EntityPublicFloat_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityPublicFloat_lbl" xml:lang="en-US">Entity Public Float</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityBankruptcyProceedingsReportingCurrent" xlink:label="dei_EntityBankruptcyProceedingsReportingCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityBankruptcyProceedingsReportingCurrent" xlink:to="dei_EntityBankruptcyProceedingsReportingCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityBankruptcyProceedingsReportingCurrent_lbl" xml:lang="en-US">Entity Bankruptcy Proceedings, Reporting Current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCommonStockSharesOutstanding_lbl" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentsIncorporatedByReferenceTextBlock" xlink:to="dei_DocumentsIncorporatedByReferenceTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock_lbl" xml:lang="en-US">Documents Incorporated by Reference [Text Block]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="dei_IcfrAuditorAttestationFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_IcfrAuditorAttestationFlag" xlink:to="dei_IcfrAuditorAttestationFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_IcfrAuditorAttestationFlag_lbl" xml:lang="en-US">ICFR Auditor Attestation Flag</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorFirmId" xlink:label="dei_AuditorFirmId" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorFirmId" xlink:to="dei_AuditorFirmId_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditorFirmId_lbl" xml:lang="en-US">Auditor Firm ID</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorName" xlink:label="dei_AuditorName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorName" xlink:to="dei_AuditorName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditorName_lbl" xml:lang="en-US">Auditor Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorLocation" xlink:label="dei_AuditorLocation" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorLocation" xlink:to="dei_AuditorLocation_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditorLocation_lbl" xml:lang="en-US">Auditor Location</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfFinancialPositionAbstract_lbl" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsAbstract_lbl" xml:lang="en-US">Assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsCurrentAbstract_lbl" xml:lang="en-US">Current assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xml:lang="en-US">Cash and cash equivalents</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MarketableSecuritiesCurrent" xlink:label="us-gaap_MarketableSecuritiesCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MarketableSecuritiesCurrent" xlink:to="us-gaap_MarketableSecuritiesCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MarketableSecuritiesCurrent_lbl" xml:lang="en-US">Marketable investment securities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl" xml:lang="en-US">Accounts receivable, net</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryNet_lbl" xml:lang="en-US">Inventory</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReceivable" xlink:label="us-gaap_IncomeTaxReceivable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReceivable" xlink:to="us-gaap_IncomeTaxReceivable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxReceivable_lbl" xml:lang="en-US">Income taxes receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesAndLoansReceivableNetCurrent" xlink:label="us-gaap_NotesAndLoansReceivableNetCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NotesAndLoansReceivableNetCurrent" xlink:to="us-gaap_NotesAndLoansReceivableNetCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NotesAndLoansReceivableNetCurrent_lbl" xml:lang="en-US">Note receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_AssetsCurrent_lbl" xml:lang="en-US">Total current assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xml:lang="en-US">Property and equipment, net</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xml:lang="en-US">Operating lease right-of-use asset</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Goodwill_lbl" xml:lang="en-US">Goodwill</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xml:lang="en-US">Intangible assets, net</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RealEstateInvestmentsJointVentures" xlink:label="us-gaap_RealEstateInvestmentsJointVentures" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RealEstateInvestmentsJointVentures" xlink:to="us-gaap_RealEstateInvestmentsJointVentures_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RealEstateInvestmentsJointVentures_lbl" xml:lang="en-US">Investment in joint venture</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesAndLoansReceivableNetNoncurrent" xlink:label="us-gaap_NotesAndLoansReceivableNetNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NotesAndLoansReceivableNetNoncurrent" xlink:to="us-gaap_NotesAndLoansReceivableNetNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NotesAndLoansReceivableNetNoncurrent_lbl" xml:lang="en-US">Note receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_Assets_lbl" xml:lang="en-US">Total assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xml:lang="en-US">Liabilities and stockholders&#8217; equity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl" xml:lang="en-US">Current liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsPayableCurrent_lbl" xml:lang="en-US">Accounts payable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedLiabilitiesCurrent_lbl" xml:lang="en-US">Accrued expenses, current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xml:lang="en-US">Operating lease liability, current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetAcquisitionContingentConsiderationLiabilityCurrent" xlink:label="us-gaap_AssetAcquisitionContingentConsiderationLiabilityCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetAcquisitionContingentConsiderationLiabilityCurrent" xlink:to="us-gaap_AssetAcquisitionContingentConsiderationLiabilityCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetAcquisitionContingentConsiderationLiabilityCurrent_lbl" xml:lang="en-US">Contingent consideration liabilities, current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TaxesPayableCurrent" xlink:label="us-gaap_TaxesPayableCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TaxesPayableCurrent" xlink:to="us-gaap_TaxesPayableCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TaxesPayableCurrent_lbl" xml:lang="en-US">Income taxes payable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xml:lang="en-US">Deferred revenue</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LiabilitiesCurrent_lbl" xml:lang="en-US">Total current liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract" xlink:to="us-gaap_LiabilitiesNoncurrentAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract_lbl" xml:lang="en-US">Long-term liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_TaxesPayableNoncurrent" xlink:label="CODX_TaxesPayableNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_TaxesPayableNoncurrent" xlink:to="CODX_TaxesPayableNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="CODX_TaxesPayableNoncurrent_lbl" xml:lang="en-US">Income taxes payable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet_lbl" xml:lang="en-US">Deferred tax liability</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xml:lang="en-US">Operating lease liability</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetAcquisitionContingentConsiderationLiabilityNoncurrent" xlink:label="us-gaap_AssetAcquisitionContingentConsiderationLiabilityNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetAcquisitionContingentConsiderationLiabilityNoncurrent" xlink:to="us-gaap_AssetAcquisitionContingentConsiderationLiabilityNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetAcquisitionContingentConsiderationLiabilityNoncurrent_lbl" xml:lang="en-US">Contingent consideration liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="us-gaap_LiabilitiesNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesNoncurrent" xlink:to="us-gaap_LiabilitiesNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LiabilitiesNoncurrent_lbl" xml:lang="en-US">Total long-term liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_Liabilities_lbl" xml:lang="en-US">Total liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingencies_lbl" xml:lang="en-US">Commitments and contingencies (Note 13)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityAbstract_lbl" xml:lang="en-US">Stockholders&#8217; equity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockValue" xlink:to="us-gaap_PreferredStockValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockValue_lbl" xml:lang="en-US">Convertible preferred stock, $0.001 par value; 5,000,000 shares authorized; 0 shares issued and outstanding as of December 31, 2022 and December 31, 2021, respectively</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockValue_lbl" xml:lang="en-US">Common stock, $0.001 par value; 100,000,000 shares authorized; 34,754,265 shares issued and 30,872,607 shares outstanding as of December 31, 2022 and 33,819,862 shares issued and outstanding as of December 31, 2021</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_TreasuryStockValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_TreasuryStockValue_lbl" xml:lang="en-US">Treasury stock, at cost; 3,881,658 and 0 shares held as of December 31, 2022 and December 31, 2021, respectively</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapital" xlink:to="us-gaap_AdditionalPaidInCapital_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdditionalPaidInCapital_lbl" xml:lang="en-US">Additional paid-in capital</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl" xml:lang="en-US">Accumulated other comprehensive income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xml:lang="en-US">Accumulated earnings</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_StockholdersEquity_lbl" xml:lang="en-US">Total stockholders&#8217; equity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xml:lang="en-US">Total liabilities and stockholders&#8217; equity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" xml:lang="en-US">Convertible preferred stock, par value</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesAuthorized" xlink:to="us-gaap_PreferredStockSharesAuthorized_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockSharesAuthorized_lbl" xml:lang="en-US">Convertible preferred stock , shares authorized</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesIssued" xlink:to="us-gaap_PreferredStockSharesIssued_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockSharesIssued_lbl" xml:lang="en-US">Convertible preferred stock, shares issued</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesOutstanding" xlink:to="us-gaap_PreferredStockSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xml:lang="en-US">Convertible preferred stock, shares outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xml:lang="en-US">Common stock, par value</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesAuthorized_lbl" xml:lang="en-US">Common stock, shares authorized</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesIssued_lbl" xml:lang="en-US">Common stock, shares issued</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xml:lang="en-US">Common stock, shares outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockShares" xlink:label="us-gaap_TreasuryStockShares" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockShares" xlink:to="us-gaap_TreasuryStockShares_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TreasuryStockShares_lbl" xml:lang="en-US">Treasury stock, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeStatementAbstract_lbl" xml:lang="en-US">Income Statement [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xml:lang="en-US">Revenue</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfRevenue" xlink:label="us-gaap_CostOfRevenue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfRevenue" xlink:to="us-gaap_CostOfRevenue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CostOfRevenue_lbl" xml:lang="en-US">Cost of revenue</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_GrossProfit_lbl" xml:lang="en-US">Gross profit</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpensesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingExpensesAbstract_lbl" xml:lang="en-US">Operating expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="us-gaap_SellingAndMarketingExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingAndMarketingExpense" xlink:to="us-gaap_SellingAndMarketingExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SellingAndMarketingExpense_lbl" xml:lang="en-US">Sales and marketing</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeneralAndAdministrativeExpense" xlink:to="us-gaap_GeneralAndAdministrativeExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GeneralAndAdministrativeExpense_lbl" xml:lang="en-US">General and administrative</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResearchAndDevelopmentExpense" xlink:to="us-gaap_ResearchAndDevelopmentExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ResearchAndDevelopmentExpense_lbl" xml:lang="en-US">Research and development</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationAndAmortization" xlink:to="us-gaap_DepreciationAndAmortization_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepreciationAndAmortization_lbl" xml:lang="en-US">Depreciation and amortization</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="us-gaap_GoodwillImpairmentLoss" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillImpairmentLoss" xlink:to="us-gaap_GoodwillImpairmentLoss_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillImpairmentLoss_lbl" xml:lang="en-US">Goodwill impairment charges</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_OperatingExpenses_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_OperatingExpenses_lbl" xml:lang="en-US">Total operating expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xml:lang="en-US">Income (loss) from operations</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract_lbl" xml:lang="en-US">Other income (expense)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestIncomeOther" xlink:label="us-gaap_InterestIncomeOther" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestIncomeOther" xlink:to="us-gaap_InterestIncomeOther_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestIncomeOther_lbl" xml:lang="en-US">Interest income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="us-gaap_GainLossOnDispositionOfAssets1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnDispositionOfAssets1" xlink:to="us-gaap_GainLossOnDispositionOfAssets1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_lbl" xml:lang="en-US">Loss on disposition of assets</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_GainOnRemeasurementOfAcquisitionContingencies" xlink:label="CODX_GainOnRemeasurementOfAcquisitionContingencies" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_GainOnRemeasurementOfAcquisitionContingencies" xlink:to="CODX_GainOnRemeasurementOfAcquisitionContingencies_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_GainOnRemeasurementOfAcquisitionContingencies_lbl" xml:lang="en-US">Gain on remeasurement of acquisition contingencies</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfInvestments" xlink:label="us-gaap_GainLossOnSaleOfInvestments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnSaleOfInvestments" xlink:to="us-gaap_GainLossOnSaleOfInvestments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GainLossOnSaleOfInvestments_lbl" xml:lang="en-US">Loss on equity method investment in joint venture</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl" xml:lang="en-US">Total other income (expense)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xml:lang="en-US">Income (loss) before income taxes</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Income tax provision (benefit)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetIncomeLoss_lbl" xml:lang="en-US">Net income (loss)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_lbl" xml:lang="en-US">Other comprehensive income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_lbl" xml:lang="en-US">Change in net unrealized gains on marketable securities, net of tax</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossBeforeTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossBeforeTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeLossBeforeTax_lbl" xml:lang="en-US">Total other comprehensive income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_lbl" xml:lang="en-US">Comprehensive income (loss)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasicAbstract" xlink:label="us-gaap_EarningsPerShareBasicAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_EarningsPerShareBasicAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareBasicAbstract_lbl" xml:lang="en-US">Earnings per common share:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xml:lang="en-US">Basic</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xml:lang="en-US">Diluted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl" xml:lang="en-US">Weighted average shares outstanding:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xml:lang="en-US">Basic</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xml:lang="en-US">Diluted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementTable_lbl" xml:lang="en-US">Statement [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementLineItems_lbl" xml:lang="en-US">Statement [Line Items]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_StockholdersEquity_2_lbl" xml:lang="en-US">Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesOutstanding" xlink:to="us-gaap_SharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_SharesOutstanding_lbl" xml:lang="en-US">Balance, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl" xml:lang="en-US">Common stock issued for option exercises</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xml:lang="en-US">Common stock issued for option exercises, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross_lbl" xml:lang="en-US">Stock-based compensation expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:to="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_lbl" xml:lang="en-US">Stock-based compensation expense, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:label="us-gaap_StockIssuedDuringPeriodValueAcquisitions" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:to="us-gaap_StockIssuedDuringPeriodValueAcquisitions_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodValueAcquisitions_lbl" xml:lang="en-US">Common stock issued for acquisitions</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:label="us-gaap_StockIssuedDuringPeriodSharesAcquisitions" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:to="us-gaap_StockIssuedDuringPeriodSharesAcquisitions_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesAcquisitions_lbl" xml:lang="en-US">Common stock issued for acquisitions, shares</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetIncomeLoss_2_lbl" xml:lang="en-US">Net income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueOther" xlink:label="us-gaap_StockIssuedDuringPeriodValueOther" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueOther" xlink:to="us-gaap_StockIssuedDuringPeriodValueOther_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodValueOther_lbl" xml:lang="en-US">Common stock issued for warrant exercises</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesOther" xlink:label="us-gaap_StockIssuedDuringPeriodSharesOther" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesOther" xlink:to="us-gaap_StockIssuedDuringPeriodSharesOther_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesOther_lbl" xml:lang="en-US">Common stock issued for warrant exercises, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchasedDuringPeriodValue" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue_lbl" xml:lang="en-US">Repurchases of common stock</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax_lbl" xml:lang="en-US">Other comprehensive income, net of tax</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_StockholdersEquity_3_lbl" xml:lang="en-US">Balance</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesOutstanding" xlink:to="us-gaap_SharesOutstanding_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_SharesOutstanding_2_lbl" xml:lang="en-US">Balance, shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfCashFlowsAbstract_lbl" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US">Cash flows from operating activities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US">Adjustments to reconcile net income to cash used in operating activities:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationDepletionAndAmortization" xlink:to="us-gaap_DepreciationDepletionAndAmortization_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DepreciationDepletionAndAmortization_lbl" xml:lang="en-US">Depreciation and amortization</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensation_lbl" xml:lang="en-US">Stock-based compensation expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_GainOnRemeasurementOfAcquisitionContingencies" xlink:to="CODX_GainOnRemeasurementOfAcquisitionContingencies_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="CODX_GainOnRemeasurementOfAcquisitionContingencies_2_lbl" xml:lang="en-US">Change in fair value of acquisition contingencies</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_NoncashLeaseExpense" xlink:label="CODX_NoncashLeaseExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_NoncashLeaseExpense" xlink:to="CODX_NoncashLeaseExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_NoncashLeaseExpense_lbl" xml:lang="en-US">Non-cash lease expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnSaleOfInvestments" xlink:to="us-gaap_GainLossOnSaleOfInvestments_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_GainLossOnSaleOfInvestments_2_lbl" xml:lang="en-US">Loss from equity method investment</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnDispositionOfAssets1" xlink:to="us-gaap_GainLossOnDispositionOfAssets1_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_2_lbl" xml:lang="en-US">Loss on disposition of assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Deferred income taxes</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProvisionForDoubtfulAccounts" xlink:to="us-gaap_ProvisionForDoubtfulAccounts_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProvisionForDoubtfulAccounts_lbl" xml:lang="en-US">Bad debt expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xml:lang="en-US">Changes in assets and liabilities:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xml:lang="en-US">Accounts receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense_lbl" xml:lang="en-US">Prepaid expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl" xml:lang="en-US">Inventory</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl" xml:lang="en-US">Deferred revenue</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl" xml:lang="en-US">Income taxes payable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_lbl" xml:lang="en-US">Accounts payable, accrued expenses and other liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xml:lang="en-US">Net cash provided by operating activities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xml:lang="en-US">Cash flows from investing activities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xml:lang="en-US">Purchases of property and equipment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:to="us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities_lbl" xml:lang="en-US">Proceeds from maturities of marketable investment securities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireMarketableSecurities" xlink:label="us-gaap_PaymentsToAcquireMarketableSecurities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireMarketableSecurities" xlink:to="us-gaap_PaymentsToAcquireMarketableSecurities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToAcquireMarketableSecurities_lbl" xml:lang="en-US">Purchases of marketable securities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromDivestitureOfInterestInJointVenture" xlink:label="us-gaap_ProceedsFromDivestitureOfInterestInJointVenture" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromDivestitureOfInterestInJointVenture" xlink:to="us-gaap_ProceedsFromDivestitureOfInterestInJointVenture_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ProceedsFromDivestitureOfInterestInJointVenture_lbl" xml:lang="en-US">Investment in joint venture</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_lbl" xml:lang="en-US">Business combinations, net of cash acquired</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xml:lang="en-US">Net cash (used in) provided by investing activities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xml:lang="en-US">Cash flows from financing activities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:to="us-gaap_ProceedsFromIssuanceOfCommonStock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromIssuanceOfCommonStock_lbl" xml:lang="en-US">Proceeds from exercise of options and warrants</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock_lbl" xml:lang="en-US">Repurchases of common stock</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xml:lang="en-US">Net cash (used in) provided by financing activities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xml:lang="en-US">Net increase in cash and cash equivalents</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xml:lang="en-US">Cash and cash equivalents at beginning of period</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_2_lbl" xml:lang="en-US">Cash and cash equivalents at end of period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract_lbl" xml:lang="en-US">Supplemental disclosure of cash flow information</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPaidNet" xlink:to="us-gaap_InterestPaidNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestPaidNet_lbl" xml:lang="en-US">Interest paid</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="us-gaap_IncomeTaxesPaidNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesPaidNet" xlink:to="us-gaap_IncomeTaxesPaidNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxesPaidNet_lbl" xml:lang="en-US">Income taxes paid</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:to="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl" xml:lang="en-US">Supplemental disclosure of non-cash investing and financing transactions</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment" xlink:label="CODX_NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment" xlink:to="CODX_NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment_lbl" xml:lang="en-US">Inventory moved to property, plant and equipment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_lbl" xml:lang="en-US">Right-of-use assets obtained in exchange for new operating lease liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_BusinessAcquisitionMeasurementPeriodAdjustments" xlink:label="CODX_BusinessAcquisitionMeasurementPeriodAdjustments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_BusinessAcquisitionMeasurementPeriodAdjustments" xlink:to="CODX_BusinessAcquisitionMeasurementPeriodAdjustments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_BusinessAcquisitionMeasurementPeriodAdjustments_lbl" xml:lang="en-US">Business acquisition measurement period adjustments</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_StockIssuedDuringPeriodValueAcquisitionsAdjustments" xlink:label="CODX_StockIssuedDuringPeriodValueAcquisitionsAdjustments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_StockIssuedDuringPeriodValueAcquisitionsAdjustments" xlink:to="CODX_StockIssuedDuringPeriodValueAcquisitionsAdjustments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_StockIssuedDuringPeriodValueAcquisitionsAdjustments_lbl" xml:lang="en-US">Fair value of common stock issued as consideration for business acquisitions</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions" xlink:label="CODX_FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions" xlink:to="CODX_FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions_lbl" xml:lang="en-US">Fair value of contingent common stock issued as consideration for business acquisitions</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountingPoliciesAbstract_lbl" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:to="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl" xml:lang="en-US">Overview and Basis of Presentation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock_lbl" xml:lang="en-US">Summary of Significant Accounting Policies</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="us-gaap_CashAndCashEquivalentsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsAbstract_lbl" xml:lang="en-US">Cash and Cash Equivalents [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsAndMarketableSecuritiesTextBlock" xlink:label="us-gaap_CashCashEquivalentsAndMarketableSecuritiesTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsAndMarketableSecuritiesTextBlock" xlink:to="us-gaap_CashCashEquivalentsAndMarketableSecuritiesTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsAndMarketableSecuritiesTextBlock_lbl" xml:lang="en-US">Cash, Cash Equivalents, and Financial Instruments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:to="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_lbl" xml:lang="en-US">Business Combination and Asset Acquisition [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationDisclosureTextBlock" xlink:to="us-gaap_BusinessCombinationDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationDisclosureTextBlock_lbl" xml:lang="en-US">Business Combinations</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueDisclosuresAbstract" xlink:to="us-gaap_FairValueDisclosuresAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueDisclosuresAbstract_lbl" xml:lang="en-US">Fair Value Disclosures [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="us-gaap_FairValueDisclosuresTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueDisclosuresTextBlock" xlink:to="us-gaap_FairValueDisclosuresTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueDisclosuresTextBlock_lbl" xml:lang="en-US">Fair Value Measurements</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract_lbl" xml:lang="en-US">Property, Plant and Equipment [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl" xml:lang="en-US">Property and Equipment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_lbl" xml:lang="en-US">Goodwill and Intangible Assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="us-gaap_PayablesAndAccrualsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_PayablesAndAccrualsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PayablesAndAccrualsAbstract_lbl" xml:lang="en-US">Payables and Accruals [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_lbl" xml:lang="en-US">Accrued Expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract_lbl" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xml:lang="en-US">Revenue</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareAbstract_lbl" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareTextBlock_lbl" xml:lang="en-US">Earnings per Share</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_lbl" xml:lang="en-US">Share-Based Payment Arrangement [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:label="us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:to="us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_lbl" xml:lang="en-US">Stock-Based Compensation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_lbl" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xml:lang="en-US">Income Taxes</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" xml:lang="en-US">Commitments and Contingencies</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_EquityAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityAbstract_lbl" xml:lang="en-US">Equity [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl" xml:lang="en-US">Share Repurchase Program</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="us-gaap_SubsequentEventsAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventsAbstract" xlink:to="us-gaap_SubsequentEventsAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SubsequentEventsAbstract_lbl" xml:lang="en-US">Subsequent Events [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventsTextBlock" xlink:to="us-gaap_SubsequentEventsTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SubsequentEventsTextBlock_lbl" xml:lang="en-US">Subsequent Events</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl" xml:lang="en-US">Cash and Cash Equivalents</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MarketableSecuritiesPolicy" xlink:label="us-gaap_MarketableSecuritiesPolicy" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MarketableSecuritiesPolicy" xlink:to="us-gaap_MarketableSecuritiesPolicy_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MarketableSecuritiesPolicy_lbl" xml:lang="en-US">Marketable Investment Securities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:label="us-gaap_TradeAndOtherAccountsReceivablePolicy" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:to="us-gaap_TradeAndOtherAccountsReceivablePolicy_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TradeAndOtherAccountsReceivablePolicy_lbl" xml:lang="en-US">Accounts Receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentsPolicy" xlink:label="us-gaap_EquityMethodInvestmentsPolicy" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentsPolicy" xlink:to="us-gaap_EquityMethodInvestmentsPolicy_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestmentsPolicy_lbl" xml:lang="en-US">Equity-Method Investments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="us-gaap_InventoryPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryPolicyTextBlock" xlink:to="us-gaap_InventoryPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_InventoryPolicyTextBlock_lbl" xml:lang="en-US">Inventory</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:to="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_lbl" xml:lang="en-US">Goodwill and Intangible Assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl" xml:lang="en-US">Long-lived Assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsPolicy" xlink:label="us-gaap_BusinessCombinationsPolicy" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationsPolicy" xlink:to="us-gaap_BusinessCombinationsPolicy_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_BusinessCombinationsPolicy_lbl" xml:lang="en-US">Business Combinations</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRecognitionPolicyTextBlock" xlink:to="us-gaap_RevenueRecognitionPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock_lbl" xml:lang="en-US">Revenue Recognition</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl" xml:lang="en-US">Deferred Revenue</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="us-gaap_ResearchAndDevelopmentExpensePolicy" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:to="us-gaap_ResearchAndDevelopmentExpensePolicy_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ResearchAndDevelopmentExpensePolicy_lbl" xml:lang="en-US">Research and Development</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:to="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl" xml:lang="en-US">Stock-based Compensation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxPolicyTextBlock" xlink:to="us-gaap_IncomeTaxPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncomeTaxPolicyTextBlock_lbl" xml:lang="en-US">Income Taxes</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerSharePolicyTextBlock" xlink:to="us-gaap_EarningsPerSharePolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerSharePolicyTextBlock_lbl" xml:lang="en-US">Net Income per Share</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:label="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:to="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock_lbl" xml:lang="en-US">Comprehensive Income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskCreditRisk" xlink:label="us-gaap_ConcentrationRiskCreditRisk" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskCreditRisk" xlink:to="us-gaap_ConcentrationRiskCreditRisk_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskCreditRisk_lbl" xml:lang="en-US">Concentrations Risk and Significant Customers</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl" xml:lang="en-US">Recently Issued Accounting Standards</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock" xlink:label="us-gaap_ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock" xlink:to="us-gaap_ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock_lbl" xml:lang="en-US">Schedule of Cash, Cash Equivalents, and Marketable Investment Securities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:to="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_lbl" xml:lang="en-US">Schedule of Assets and Liabilities assumed</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:label="us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:to="us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock_lbl" xml:lang="en-US">Schedule of Fair Value Assets and Liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_lbl" xml:lang="en-US">Schedule of Changes in Fair Value Measurement</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock_lbl" xml:lang="en-US">Schedule of Contingent Consideration Common Stock and Warrants</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl" xml:lang="en-US">Schedule of Property and Equipment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="us-gaap_ScheduleOfGoodwillTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfGoodwillTextBlock" xlink:to="us-gaap_ScheduleOfGoodwillTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfGoodwillTextBlock_lbl" xml:lang="en-US">Schedule of Goodwill</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl" xml:lang="en-US">Schedule of Intangible Assets, Net</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:to="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_lbl" xml:lang="en-US">Schedule of Future Amortization Expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:to="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_lbl" xml:lang="en-US">Schedule of Accrued Expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" xlink:label="us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" xlink:to="us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_lbl" xml:lang="en-US">Summary of Revenue by Geographic Area</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:to="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl" xml:lang="en-US">Schedule of Deferred Revenue</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xml:lang="en-US">Schedule of Basic and Diluted Earnings Per Share</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl" xml:lang="en-US">Schedule of Option Activity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_lbl" xml:lang="en-US">Schedule of Outstanding Restricted Stock Units and Related Activity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock" xlink:label="us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock" xlink:to="us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock_lbl" xml:lang="en-US">Schedule of Warrant Activity</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock_lbl" xml:lang="en-US">Schedule of Recognized Stock-based Compensation Expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl" xml:lang="en-US">Schedule of Components Income Tax Provision</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl" xml:lang="en-US">Schedule of Benefit from Income Taxes and Effective Tax Rates</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_lbl" xml:lang="en-US">Schedule of Deferred Tax Assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:label="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:to="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_lbl" xml:lang="en-US">Schedule of Unrecognized Tax Benefits</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="us-gaap_LeaseCostTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseCostTableTextBlock" xlink:to="us-gaap_LeaseCostTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LeaseCostTableTextBlock_lbl" xml:lang="en-US">Schedule of Lease Expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" xml:lang="en-US">Schedule of Maturities on Company Lease Liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ScheduleOfOperatingLeaseTableTextBlock" xlink:label="CODX_ScheduleOfOperatingLeaseTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ScheduleOfOperatingLeaseTableTextBlock" xlink:to="CODX_ScheduleOfOperatingLeaseTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ScheduleOfOperatingLeaseTableTextBlock_lbl" xml:lang="en-US">Schedule of Other Information Related to Operating Lease</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ScheduleOfTreasuryStockTableTextBlock" xlink:label="CODX_ScheduleOfTreasuryStockTableTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ScheduleOfTreasuryStockTableTextBlock" xlink:to="CODX_ScheduleOfTreasuryStockTableTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ScheduleOfTreasuryStockTableTextBlock_lbl" xml:lang="en-US">Schedule of Treasury Stock</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfProductInformationTable" xlink:label="us-gaap_ScheduleOfProductInformationTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfProductInformationTable" xlink:to="us-gaap_ScheduleOfProductInformationTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfProductInformationTable_lbl" xml:lang="en-US">Schedule of Product Information [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductInformationLineItems" xlink:label="us-gaap_ProductInformationLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductInformationLineItems" xlink:to="us-gaap_ProductInformationLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProductInformationLineItems_lbl" xml:lang="en-US">Product Information [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableGrossCurrent" xlink:label="us-gaap_AccountsReceivableGrossCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableGrossCurrent" xlink:to="us-gaap_AccountsReceivableGrossCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableGrossCurrent_lbl" xml:lang="en-US">Accounts receivable, before allowance for credit loss, current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl" xml:lang="en-US">Uncollectable accounts</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccountsReceivableNetCurrent_2_lbl" xml:lang="en-US">Accounts receivable, after allowance for credit loss, current</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_InventoryNet_2_lbl" xml:lang="en-US">Inventory, net</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoods" xlink:label="us-gaap_InventoryFinishedGoods" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryFinishedGoods" xlink:to="us-gaap_InventoryFinishedGoods_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryFinishedGoods_lbl" xml:lang="en-US">Inventory, finished goods, gross</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterials" xlink:label="us-gaap_InventoryRawMaterials" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryRawMaterials" xlink:to="us-gaap_InventoryRawMaterials_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryRawMaterials_lbl" xml:lang="en-US">Inventory, raw materials, gross</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetImpairmentCharges" xlink:label="us-gaap_AssetImpairmentCharges" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetImpairmentCharges" xlink:to="us-gaap_AssetImpairmentCharges_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetImpairmentCharges_lbl" xml:lang="en-US">Impairment charges</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResearchAndDevelopmentExpense" xlink:to="us-gaap_ResearchAndDevelopmentExpense_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ResearchAndDevelopmentExpense_2_lbl" xml:lang="en-US">Research and development costs</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskPercentage1" xlink:to="us-gaap_ConcentrationRiskPercentage1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskPercentage1_lbl" xml:lang="en-US">Concentration risk percentage</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xml:lang="en-US">Operating lease liability</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_2_lbl" xml:lang="en-US">Operating right use of asset</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable" xlink:label="us-gaap_ScheduleOfCashAndCashEquivalentsTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfCashAndCashEquivalentsTable" xlink:to="us-gaap_ScheduleOfCashAndCashEquivalentsTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfCashAndCashEquivalentsTable_lbl" xml:lang="en-US">Schedule of Cash and Cash Equivalents [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsLineItems" xlink:label="us-gaap_CashAndCashEquivalentsLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsLineItems" xlink:to="us-gaap_CashAndCashEquivalentsLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsLineItems_lbl" xml:lang="en-US">Cash and Cash Equivalents [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingSecuritiesDebtAmortizedCost" xlink:label="us-gaap_TradingSecuritiesDebtAmortizedCost" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradingSecuritiesDebtAmortizedCost" xlink:to="us-gaap_TradingSecuritiesDebtAmortizedCost_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TradingSecuritiesDebtAmortizedCost_lbl" xml:lang="en-US">Adjusted Cost</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinancingReceivableAllowanceForCreditLosses" xlink:label="us-gaap_FinancingReceivableAllowanceForCreditLosses" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancingReceivableAllowanceForCreditLosses" xlink:to="us-gaap_FinancingReceivableAllowanceForCreditLosses_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinancingReceivableAllowanceForCreditLosses_lbl" xml:lang="en-US">Allowance for Credit Losses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MarketableSecuritiesUnrealizedGainLoss" xlink:label="us-gaap_MarketableSecuritiesUnrealizedGainLoss" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MarketableSecuritiesUnrealizedGainLoss" xlink:to="us-gaap_MarketableSecuritiesUnrealizedGainLoss_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MarketableSecuritiesUnrealizedGainLoss_lbl" xml:lang="en-US">Total Unrealized Gains / (Losses)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingSecurities" xlink:label="us-gaap_TradingSecurities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradingSecurities" xlink:to="us-gaap_TradingSecurities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TradingSecurities_lbl" xml:lang="en-US">Fair Value</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_2_lbl" xml:lang="en-US">Cash and Cash Equivalents</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MarketableSecurities" xlink:label="us-gaap_MarketableSecurities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MarketableSecurities" xlink:to="us-gaap_MarketableSecurities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MarketableSecurities_lbl" xml:lang="en-US">Marketable Securities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_lbl" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="us-gaap_BusinessAcquisitionLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionLineItems" xlink:to="us-gaap_BusinessAcquisitionLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessAcquisitionLineItems_lbl" xml:lang="en-US">Business Acquisition [Line Items]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:to="us-gaap_StockIssuedDuringPeriodValueAcquisitions_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodValueAcquisitions_2_lbl" xml:lang="en-US">Fair value of common shares issued</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_PaymentsToShareHoldersValueAcquisitions" xlink:label="CODX_PaymentsToShareHoldersValueAcquisitions" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_PaymentsToShareHoldersValueAcquisitions" xlink:to="CODX_PaymentsToShareHoldersValueAcquisitions_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_PaymentsToShareHoldersValueAcquisitions_lbl" xml:lang="en-US">Payable to shareholders</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContingentConsiderationClassifiedAsEquityFairValueDisclosure" xlink:label="us-gaap_ContingentConsiderationClassifiedAsEquityFairValueDisclosure" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContingentConsiderationClassifiedAsEquityFairValueDisclosure" xlink:to="us-gaap_ContingentConsiderationClassifiedAsEquityFairValueDisclosure_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContingentConsiderationClassifiedAsEquityFairValueDisclosure_lbl" xml:lang="en-US">Fair value of contingent shares</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantsNotSettleableInCashFairValueDisclosure" xlink:label="us-gaap_WarrantsNotSettleableInCashFairValueDisclosure" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WarrantsNotSettleableInCashFairValueDisclosure" xlink:to="us-gaap_WarrantsNotSettleableInCashFairValueDisclosure_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WarrantsNotSettleableInCashFairValueDisclosure_lbl" xml:lang="en-US">Fair value of contingent warrants</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationConsiderationTransferred1" xlink:to="us-gaap_BusinessCombinationConsiderationTransferred1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1_lbl" xml:lang="en-US">Business combination, consideration transferred</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_lbl" xml:lang="en-US">Cash</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_lbl" xml:lang="en-US">Accounts receivables</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_lbl" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_lbl" xml:lang="en-US">Property and equipments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_lbl" xml:lang="en-US">Research and development in process</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements" xlink:label="CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements" xlink:to="CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_lbl" xml:lang="en-US">Non competition agreements</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_lbl" xml:lang="en-US">Accounts payable and accrued other expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_lbl" xml:lang="en-US">Deferred tax liability</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_lbl" xml:lang="en-US">Total indentifiable net assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_lbl" xml:lang="en-US">Total</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_StockIssuedDuringPeriodSharesExchanged" xlink:label="CODX_StockIssuedDuringPeriodSharesExchanged" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_StockIssuedDuringPeriodSharesExchanged" xlink:to="CODX_StockIssuedDuringPeriodSharesExchanged_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_StockIssuedDuringPeriodSharesExchanged_lbl" xml:lang="en-US">Number of shares exchanged</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_StockIssuedDuringPeriodSharesContingentConsideration" xlink:label="CODX_StockIssuedDuringPeriodSharesContingentConsideration" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_StockIssuedDuringPeriodSharesContingentConsideration" xlink:to="CODX_StockIssuedDuringPeriodSharesContingentConsideration_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_StockIssuedDuringPeriodSharesContingentConsideration_lbl" xml:lang="en-US">Number of shares on contingent consideration</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" xlink:label="us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" xlink:to="us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_lbl" xml:lang="en-US">Warrants to purchase shares of common stock</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:to="us-gaap_EquityMethodInvestmentOwnershipPercentage_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage_lbl" xml:lang="en-US">Equity method investment ownership percentage</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationConsiderationTransferred1" xlink:to="us-gaap_BusinessCombinationConsiderationTransferred1_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1_2_lbl" xml:lang="en-US">Purchase consideration</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_2_lbl" xml:lang="en-US">Estimated tax liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillPeriodIncreaseDecrease" xlink:label="us-gaap_GoodwillPeriodIncreaseDecrease" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillPeriodIncreaseDecrease" xlink:to="us-gaap_GoodwillPeriodIncreaseDecrease_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillPeriodIncreaseDecrease_lbl" xml:lang="en-US">Increase of goodwill</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_RemeasurementOfAcquisitionContingencies" xlink:label="CODX_RemeasurementOfAcquisitionContingencies" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_RemeasurementOfAcquisitionContingencies" xlink:to="CODX_RemeasurementOfAcquisitionContingencies_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_RemeasurementOfAcquisitionContingencies_lbl" xml:lang="en-US">Remeasurement of acquisition contingencies</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xlink:label="us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xlink:to="us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_lbl" xml:lang="en-US">Finite lived intangible assets remaining amortization period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_lbl" xml:lang="en-US">Fair Value, Recurring and Nonrecurring [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_lbl" xml:lang="en-US">Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:label="us-gaap_CashAndCashEquivalentsFairValueDisclosure" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:to="us-gaap_CashAndCashEquivalentsFairValueDisclosure_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsFairValueDisclosure_lbl" xml:lang="en-US">Cash equivalents</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MarketableSecurities" xlink:to="us-gaap_MarketableSecurities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_MarketableSecurities_2_lbl" xml:lang="en-US">Marketable securities (certificates of deposit)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="us-gaap_AssetsFairValueDisclosure" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsFairValueDisclosure" xlink:to="us-gaap_AssetsFairValueDisclosure_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsFairValueDisclosure_lbl" xml:lang="en-US">Total assets measured at fair value</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_FairValueOfContingentConsiderationToCommonStock" xlink:label="CODX_FairValueOfContingentConsiderationToCommonStock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_FairValueOfContingentConsiderationToCommonStock" xlink:to="CODX_FairValueOfContingentConsiderationToCommonStock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_FairValueOfContingentConsiderationToCommonStock_lbl" xml:lang="en-US">Contingent consideration - common stock</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_FairValueOfContingentConsiderationToWarrants" xlink:label="CODX_FairValueOfContingentConsiderationToWarrants" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_FairValueOfContingentConsiderationToWarrants" xlink:to="CODX_FairValueOfContingentConsiderationToWarrants_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_FairValueOfContingentConsiderationToWarrants_lbl" xml:lang="en-US">Contingent consideration - warrants</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesFairValueDisclosure" xlink:label="us-gaap_LiabilitiesFairValueDisclosure" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesFairValueDisclosure" xlink:to="us-gaap_LiabilitiesFairValueDisclosure_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesFairValueDisclosure_lbl" xml:lang="en-US">Total liabilities measured at fair value</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent_lbl" xml:lang="en-US">Fair value as of December 31, 2021</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ContingentConsideredIssuedForMeasurementPeriodAdjustments" xlink:label="CODX_ContingentConsideredIssuedForMeasurementPeriodAdjustments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ContingentConsideredIssuedForMeasurementPeriodAdjustments" xlink:to="CODX_ContingentConsideredIssuedForMeasurementPeriodAdjustments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ContingentConsideredIssuedForMeasurementPeriodAdjustments_lbl" xml:lang="en-US">Change in contingent purchase consideration for measurement period adjustments</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ContingentConsideredIssuedForBusinessAcquisitions" xlink:label="CODX_ContingentConsideredIssuedForBusinessAcquisitions" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ContingentConsideredIssuedForBusinessAcquisitions" xlink:to="CODX_ContingentConsideredIssuedForBusinessAcquisitions_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ContingentConsideredIssuedForBusinessAcquisitions_lbl" xml:lang="en-US">Change in fair value of contingent consideration issued for business acquisitions</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent_2_lbl" xml:lang="en-US">Fair value as of December 31, 2022</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable_lbl" xml:lang="en-US">Fair Value Measurement Inputs and Valuation Techniques [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems_lbl" xml:lang="en-US">Fair Value Measurement Inputs and Valuation Techniques [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantsAndRightsOutstandingMeasurementInput" xlink:label="us-gaap_WarrantsAndRightsOutstandingMeasurementInput" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WarrantsAndRightsOutstandingMeasurementInput" xlink:to="us-gaap_WarrantsAndRightsOutstandingMeasurementInput_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WarrantsAndRightsOutstandingMeasurementInput_lbl" xml:lang="en-US">Warrants measurement input</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantsAndRightsOutstandingTerm" xlink:label="us-gaap_WarrantsAndRightsOutstandingTerm" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WarrantsAndRightsOutstandingTerm" xlink:to="us-gaap_WarrantsAndRightsOutstandingTerm_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WarrantsAndRightsOutstandingTerm_lbl" xml:lang="en-US">Expected term</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityMeasurementInput" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityMeasurementInput" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationContingentConsiderationLiabilityMeasurementInput" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiabilityMeasurementInput_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityMeasurementInput_lbl" xml:lang="en-US">Business combination,contingent consideration</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm" xlink:label="CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm" xlink:to="CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_lbl" xml:lang="en-US">Business combination,contingent consideration</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_lbl" xml:lang="en-US">Property, Plant and Equipment [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems_lbl" xml:lang="en-US">Property, Plant and Equipment [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl" xml:lang="en-US">Property and equipment estimated useful lives</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_PropertyPlantAndEquipmentGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl" xml:lang="en-US">Property and equipment, gross</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xml:lang="en-US">Less: accumulated depreciation</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_Goodwill_2_lbl" xml:lang="en-US">Goodwil - beginning</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillTranslationAndPurchaseAccountingAdjustments" xlink:label="us-gaap_GoodwillTranslationAndPurchaseAccountingAdjustments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillTranslationAndPurchaseAccountingAdjustments" xlink:to="us-gaap_GoodwillTranslationAndPurchaseAccountingAdjustments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillTranslationAndPurchaseAccountingAdjustments_lbl" xml:lang="en-US">Measurement period adjustments</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillImpairmentLoss" xlink:to="us-gaap_GoodwillImpairmentLoss_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_GoodwillImpairmentLoss_2_lbl" xml:lang="en-US">Goodwill impairment charges</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_Goodwill_3_lbl" xml:lang="en-US">Goodwill - ending</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_lbl" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems_lbl" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_IndefiniteLivedIntangibleAssetUsefulLife" xlink:label="CODX_IndefiniteLivedIntangibleAssetUsefulLife" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_IndefiniteLivedIntangibleAssetUsefulLife" xlink:to="CODX_IndefiniteLivedIntangibleAssetUsefulLife_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_IndefiniteLivedIntangibleAssetUsefulLife_lbl" xml:lang="en-US">Estimated useful lives in years, term</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross_lbl" xml:lang="en-US">Intangible assets, gross</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xml:lang="en-US">Less accumulated amortization</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl" xml:lang="en-US">Estimated useful lives in years</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl" xml:lang="en-US">2023</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl" xml:lang="en-US">2024</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xml:lang="en-US">Total</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedPayrollTaxesCurrent" xlink:label="us-gaap_AccruedPayrollTaxesCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedPayrollTaxesCurrent" xlink:to="us-gaap_AccruedPayrollTaxesCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedPayrollTaxesCurrent_lbl" xml:lang="en-US">Payroll liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedSalesCommissionCurrent" xlink:label="us-gaap_AccruedSalesCommissionCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedSalesCommissionCurrent" xlink:to="us-gaap_AccruedSalesCommissionCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedSalesCommissionCurrent_lbl" xml:lang="en-US">Distributor commissions</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent_lbl" xml:lang="en-US">Other accrued liabilities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccruedLiabilitiesCurrent_2_lbl" xml:lang="en-US">Total accrued expenses</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="us-gaap_DisaggregationOfRevenueTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueTable" xlink:to="us-gaap_DisaggregationOfRevenueTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisaggregationOfRevenueTable_lbl" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="us-gaap_DisaggregationOfRevenueLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueLineItems" xlink:to="us-gaap_DisaggregationOfRevenueLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisaggregationOfRevenueLineItems_lbl" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl" xml:lang="en-US">Revenue</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskPercentage1" xlink:to="us-gaap_ConcentrationRiskPercentage1_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ConcentrationRiskPercentage1_2_lbl" xml:lang="en-US">Percentage of revenue</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="us-gaap_ContractWithCustomerLiability" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiability" xlink:to="us-gaap_ContractWithCustomerLiability_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ContractWithCustomerLiability_lbl" xml:lang="en-US">Deferred revenue, beginning balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:to="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_lbl" xml:lang="en-US">Revenue recognized included in deferred revenue balance at the beginning of the period</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_IncreaseDueToPrepaymentsFromCustomers" xlink:label="CODX_IncreaseDueToPrepaymentsFromCustomers" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_IncreaseDueToPrepaymentsFromCustomers" xlink:to="CODX_IncreaseDueToPrepaymentsFromCustomers_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_IncreaseDueToPrepaymentsFromCustomers_lbl" xml:lang="en-US">Increase due to prepayments from customers</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_IncreaseDueToNoteReceivable" xlink:label="CODX_IncreaseDueToNoteReceivable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_IncreaseDueToNoteReceivable" xlink:to="CODX_IncreaseDueToNoteReceivable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_IncreaseDueToNoteReceivable_lbl" xml:lang="en-US">Increase due to note receivable</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances" xlink:label="CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances" xlink:to="CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances_lbl" xml:lang="en-US">Decrease due to refunds to customers and application to open balances</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiability" xlink:to="us-gaap_ContractWithCustomerLiability_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ContractWithCustomerLiability_2_lbl" xml:lang="en-US">Deferred revenue, Ending balance</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NetIncomeLoss_3_lbl" xml:lang="en-US">Net income, as reported</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_2_lbl" xml:lang="en-US">Weighted average shares, basic</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_lbl" xml:lang="en-US">Dilutive effect of stock options, warrants and RSUs</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2_lbl" xml:lang="en-US">Shares used to compute diluted earnings per share</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EarningsPerShareBasic_2_lbl" xml:lang="en-US">Basic earnings per share</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EarningsPerShareDiluted_2_lbl" xml:lang="en-US">Diluted earnings per share</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_lbl" xml:lang="en-US">Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_lbl" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xml:lang="en-US">Securities excluded from computation of diluted earnings per share</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xml:lang="en-US">Number of Options Outstanding, Beginning</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price Outstanding, Beginning</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted Average Fair Value Outstanding, Beginning</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_lbl" xml:lang="en-US">Number of Options Outstanding, Granted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Granted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted Average Fair Value, Granted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_lbl" xml:lang="en-US">Number of Options Outstanding, Expired</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Expired</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted Average Fair Value, Expired</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_lbl" xml:lang="en-US">Number of Options Outstanding, Forfeited/Cancelled</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Forfeited/Cancelled</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted Average Fair Value, Forfeited/Cancelled</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_2_lbl" xml:lang="en-US">Number of Options Outstanding, Exercised</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Exercised</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised_lbl" xml:lang="en-US">Weighted Average Fair Value, Exercised</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_2_lbl" xml:lang="en-US">Number of Options Outstanding, Ending</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_2_lbl" xml:lang="en-US">Weighted Average Exercise Price Outstanding, Ending</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_2_lbl" xml:lang="en-US">Weighted Average Fair Value Outstanding, Ending</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm_lbl" xml:lang="en-US">Weighted-average Remaining Contractual Life (years) Outstanding, Ending</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_lbl" xml:lang="en-US">Number of Options Exercisable Ending</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Exercisable Ending</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable_lbl" xml:lang="en-US">Weighted Average Fair Value, Exercisable Ending</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_lbl" xml:lang="en-US">Weighted-average Remaining Contractual Life (years), Exercisable Ending</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl" xml:lang="en-US">Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl" xml:lang="en-US">Number of Restricted Stock Units, Outstanding Beginning</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted Average Grant Date Fair Value, Outstanding Beginning</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl" xml:lang="en-US">Number of Restricted Stock Units, Granted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted Average Grant Date Fair Value, Granted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl" xml:lang="en-US">Number of Restricted Stock Units, Vested</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted Average Grant Date Fair Value, Vested</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl" xml:lang="en-US">Number of Restricted Stock Units, Forfeited/Cancelled</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted Average Grant Date Fair Value, Forfeited/Cancelled</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2_lbl" xml:lang="en-US">Number of Restricted Stock Units, Outstanding Ending</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2_lbl" xml:lang="en-US">Weighted Average Grant Date Fair Value, Outstanding Ending</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_lbl" xml:lang="en-US">Number of Warrants Outstanding, Beginning</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Beginning</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue" xlink:to="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_lbl" xml:lang="en-US">Weighted Average fair value, Beginning</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1_lbl" xml:lang="en-US">Weighted-average Remaining Contractual Life (Years) Outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_lbl" xml:lang="en-US">Number of Warrants Outstanding, Granted</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Granted</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted Average Fair Value, Granted</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations_lbl" xml:lang="en-US">Number of Warrants Outstanding, Expired</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Expired</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted Average Fair Value, Expired</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures_lbl" xml:lang="en-US">Number of Warrants Outstanding, Forfeited/Cancelled</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Forfeited/Cancelled</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted Average Fair Value, Forfeited/Cancelled</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_lbl" xml:lang="en-US">Number of Warrants Outstanding, Exercised</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Exercised</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue" xlink:to="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted Average Fair Value, Exercised</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_lbl" xml:lang="en-US">Weighted-average Remaining Contractual Life (Years) Outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration" xlink:label="CODX_ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration" xlink:to="CODX_ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration_lbl" xml:lang="en-US">Number of Warrants Outstanding, Issued</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice" xlink:label="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice" xlink:to="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Issued</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue" xlink:label="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue" xlink:to="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted Average Fair Value, Issued</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_2_lbl" xml:lang="en-US">Number of Warrants Outstanding, Ending</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice_lbl" xml:lang="en-US">Weighted Average Exercise Price, Ending</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Weighted Average Fair Value, Ending</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl" xml:lang="en-US">Total stock-based compensation expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_lbl" xml:lang="en-US">Number of common shares availalble for issuance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_lbl" xml:lang="en-US">Intrinsic value of options value exercised</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_lbl" xml:lang="en-US">Aggregate intrinsic value of options outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl" xml:lang="en-US">Unrecognized stock-based compensation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl" xml:lang="en-US">Unrecognized stock-based compensation recognition period</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue" xlink:to="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue_lbl" xml:lang="en-US">Intrinsic value of warrants exercised</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ClassOfWarrantExercisable" xlink:label="CODX_ClassOfWarrantExercisable" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ClassOfWarrantExercisable" xlink:to="CODX_ClassOfWarrantExercisable_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ClassOfWarrantExercisable_lbl" xml:lang="en-US">Warrants exercisable</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightOutstanding" xlink:label="us-gaap_ClassOfWarrantOrRightOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ClassOfWarrantOrRightOutstanding" xlink:to="us-gaap_ClassOfWarrantOrRightOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ClassOfWarrantOrRightOutstanding_lbl" xml:lang="en-US">Warrants purchase</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesIssuedForServices" xlink:label="us-gaap_StockIssuedDuringPeriodSharesIssuedForServices" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesIssuedForServices" xlink:to="us-gaap_StockIssuedDuringPeriodSharesIssuedForServices_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesIssuedForServices_lbl" xml:lang="en-US">Number of shares issued for services</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:label="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:to="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_lbl" xml:lang="en-US">Current:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit_lbl" xml:lang="en-US">Federal</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_lbl" xml:lang="en-US">State</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit" xlink:to="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit_lbl" xml:lang="en-US">Total current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:label="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:to="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_lbl" xml:lang="en-US">Deferred:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Federal</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">State</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit" xlink:to="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit_lbl" xml:lang="en-US">Total deferred</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_IncomeTaxExpenseBenefit_2_lbl" xml:lang="en-US">Total income tax (benefit) expense</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl" xml:lang="en-US">Federal income tax expense at statutory rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl" xml:lang="en-US">State income tax expense, net of federal tax benefit</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract_lbl" xml:lang="en-US">Permanent differences:</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction" xlink:label="CODX_EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction" xlink:to="CODX_EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction_lbl" xml:lang="en-US">- Foreign derived intangible income deduction</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent_lbl" xml:lang="en-US">- Stock based compensation</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement" xlink:label="CODX_EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement" xlink:to="CODX_EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement_lbl" xml:lang="en-US">- Contingent consideration remeasurement</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_EffectiveIncomeTaxRateReconciliationGoodwillImpairment" xlink:label="CODX_EffectiveIncomeTaxRateReconciliationGoodwillImpairment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_EffectiveIncomeTaxRateReconciliationGoodwillImpairment" xlink:to="CODX_EffectiveIncomeTaxRateReconciliationGoodwillImpairment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_EffectiveIncomeTaxRateReconciliationGoodwillImpairment_lbl" xml:lang="en-US">- Goodwill impairment</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_lbl" xml:lang="en-US">- Other permanent differences</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment_lbl" xml:lang="en-US">Research and development credits</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance" xlink:label="CODX_EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance" xlink:to="CODX_EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance_lbl" xml:lang="en-US">Change in uncertain tax positions</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_lbl" xml:lang="en-US">Change in valuation allowance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments_lbl" xml:lang="en-US">Other</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_lbl" xml:lang="en-US">Effective income tax rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGrossAbstract" xlink:label="us-gaap_DeferredTaxAssetsGrossAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsGrossAbstract" xlink:to="us-gaap_DeferredTaxAssetsGrossAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsGrossAbstract_lbl" xml:lang="en-US">Deferred tax assets:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_lbl" xml:lang="en-US">Accrued liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_lbl" xml:lang="en-US">Reserves and allowances</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits_lbl" xml:lang="en-US">Deferred compensation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:label="us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:to="us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment_lbl" xml:lang="en-US">Research and development credits</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_DeferredTaxAssetsLeaseLiability" xlink:label="CODX_DeferredTaxAssetsLeaseLiability" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_DeferredTaxAssetsLeaseLiability" xlink:to="CODX_DeferredTaxAssetsLeaseLiability_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_DeferredTaxAssetsLeaseLiability_lbl" xml:lang="en-US">Lease liability</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_DeferredTaxAssetsUniformCapitalization" xlink:label="CODX_DeferredTaxAssetsUniformCapitalization" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_DeferredTaxAssetsUniformCapitalization" xlink:to="CODX_DeferredTaxAssetsUniformCapitalization_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_DeferredTaxAssetsUniformCapitalization_lbl" xml:lang="en-US">UNICAP</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="us-gaap_DeferredTaxAssetsGross" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsGross_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_DeferredTaxAssetsGross_lbl" xml:lang="en-US">Total deferred tax assets</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesAbstract" xlink:label="us-gaap_DeferredTaxLiabilitiesAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxLiabilitiesAbstract_lbl" xml:lang="en-US">Deferred tax liabilities:</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_lbl" xml:lang="en-US">Property and equipment, net</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:to="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_lbl" xml:lang="en-US">Intangibles, net</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:to="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_lbl" xml:lang="en-US">Prepaids</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_DeferredTaxLiabilitiesRightOfUseAsset" xlink:label="CODX_DeferredTaxLiabilitiesRightOfUseAsset" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_DeferredTaxLiabilitiesRightOfUseAsset" xlink:to="CODX_DeferredTaxLiabilitiesRightOfUseAsset_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_DeferredTaxLiabilitiesRightOfUseAsset_lbl" xml:lang="en-US">Right of use asset</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOtherComprehensiveIncome" xlink:label="us-gaap_DeferredTaxLiabilitiesOtherComprehensiveIncome" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesOtherComprehensiveIncome" xlink:to="us-gaap_DeferredTaxLiabilitiesOtherComprehensiveIncome_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DeferredTaxLiabilitiesOtherComprehensiveIncome_lbl" xml:lang="en-US">Other comprehensive income</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOther" xlink:label="us-gaap_DeferredTaxLiabilitiesOther" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesOther" xlink:to="us-gaap_DeferredTaxLiabilitiesOther_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DeferredTaxLiabilitiesOther_lbl" xml:lang="en-US">Other</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredIncomeTaxLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_lbl" xml:lang="en-US">Total deferred tax liabilities</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_NetDeferredTaxLiabilities" xlink:label="CODX_NetDeferredTaxLiabilities" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_NetDeferredTaxLiabilities" xlink:to="CODX_NetDeferredTaxLiabilities_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_NetDeferredTaxLiabilities_lbl" xml:lang="en-US">Net deferred tax (liabilities)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance_lbl" xml:lang="en-US">Less valuation allowance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="us-gaap_DeferredTaxAssetsLiabilitiesNet" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:to="us-gaap_DeferredTaxAssetsLiabilitiesNet_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DeferredTaxAssetsLiabilitiesNet_lbl" xml:lang="en-US">Net deferred tax (liabilities)</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="us-gaap_UnrecognizedTaxBenefits" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefits" xlink:to="us-gaap_UnrecognizedTaxBenefits_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_UnrecognizedTaxBenefits_lbl" xml:lang="en-US">Unrecognized tax benefits at the beginning of the year</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_lbl" xml:lang="en-US">Gross increases - current year tax positions</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_lbl" xml:lang="en-US">Gross increases - prior year tax positions</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:label="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:to="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_lbl" xml:lang="en-US">Gross decreases- prior year tax positions</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefits" xlink:to="us-gaap_UnrecognizedTaxBenefits_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_UnrecognizedTaxBenefits_2_lbl" xml:lang="en-US">Unrecognized tax benefits at end of year</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued_lbl" xml:lang="en-US">Interest and penalities in year- end balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="us-gaap_OperatingLossCarryforwards" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLossCarryforwards" xlink:to="us-gaap_OperatingLossCarryforwards_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLossCarryforwards_lbl" xml:lang="en-US">Net operating loss carry-forwards</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:to="us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment_2_lbl" xml:lang="en-US">Research and development credit carry forwards</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal_lbl" xml:lang="en-US">State net operating loss carryforwards</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsTaxCreditCarryforwards" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxCreditCarryforwards" xlink:to="us-gaap_DeferredTaxAssetsTaxCreditCarryforwards_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsTaxCreditCarryforwards_lbl" xml:lang="en-US">State research and development credit carryforwards</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:label="us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:to="us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_lbl" xml:lang="en-US">Unrecognized tax benefits that would impact effective tax rate</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost" xlink:label="us-gaap_OperatingLeaseCost" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseCost" xlink:to="us-gaap_OperatingLeaseCost_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseCost_lbl" xml:lang="en-US">Operating lease costs</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermLeaseCost" xlink:label="us-gaap_ShortTermLeaseCost" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShortTermLeaseCost" xlink:to="us-gaap_ShortTermLeaseCost_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShortTermLeaseCost_lbl" xml:lang="en-US">Short-term lease costs</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost" xlink:label="us-gaap_LeaseCost" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseCost" xlink:to="us-gaap_LeaseCost_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LeaseCost_lbl" xml:lang="en-US">Total lease costs</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xml:lang="en-US">2023</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xml:lang="en-US">2024</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xml:lang="en-US">2025</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl" xml:lang="en-US">2026</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_lbl" xml:lang="en-US">2027</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_lbl" xml:lang="en-US">Thereafter</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xml:lang="en-US">Total lease payments</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xml:lang="en-US">Less: imputed interest</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiability_2_lbl" xml:lang="en-US">Present value of operating lease liabilities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_2_lbl" xml:lang="en-US">Less: current portion</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_2_lbl" xml:lang="en-US">Long-term portion</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeasePayments" xlink:to="us-gaap_OperatingLeasePayments_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeasePayments_lbl" xml:lang="en-US">Cash paid for operating leases included in operating cash flows</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl" xml:lang="en-US">Remaining lease term of operating leases</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl" xml:lang="en-US">Discount rate of operating leases</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockShares" xlink:to="us-gaap_TreasuryStockShares_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_TreasuryStockShares_2_lbl" xml:lang="en-US">Treasury stock, Beginning Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_RepurchasesOfCommonStock" xlink:label="CODX_RepurchasesOfCommonStock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_RepurchasesOfCommonStock" xlink:to="CODX_RepurchasesOfCommonStock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_RepurchasesOfCommonStock_lbl" xml:lang="en-US">Repurchases of common stock</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockShares" xlink:to="us-gaap_TreasuryStockShares_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_TreasuryStockShares_3_lbl" xml:lang="en-US">Treasury stock, Ending Balance</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:label="us-gaap_StockRepurchaseProgramAuthorizedAmount1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:to="us-gaap_StockRepurchaseProgramAuthorizedAmount1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockRepurchaseProgramAuthorizedAmount1_lbl" xml:lang="en-US">Stock repurchase program authorized amount</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_TaxesPayableNoncurrent" xlink:to="CODX_TaxesPayableNoncurrent_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_TaxesPayableNoncurrent_doc" xml:lang="en-US">Taxes payable non current.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_GainOnRemeasurementOfAcquisitionContingencies" xlink:to="CODX_GainOnRemeasurementOfAcquisitionContingencies_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_GainOnRemeasurementOfAcquisitionContingencies_doc" xml:lang="en-US">Gain on remeasurement of acquisition contingencies.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_IndefiniteLivedIntangibleAssetUsefulLife" xlink:to="CODX_IndefiniteLivedIntangibleAssetUsefulLife_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_IndefiniteLivedIntangibleAssetUsefulLife_doc" xml:lang="en-US">Indefinite lived intangible asset useful life.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_IncreaseDueToPrepaymentsFromCustomers" xlink:to="CODX_IncreaseDueToPrepaymentsFromCustomers_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_IncreaseDueToPrepaymentsFromCustomers_doc" xml:lang="en-US">Increase due to prepayments from customers.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_IncreaseDueToNoteReceivable" xlink:to="CODX_IncreaseDueToNoteReceivable_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_IncreaseDueToNoteReceivable_doc" xml:lang="en-US">Increase due to note receivable.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances" xlink:to="CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances_doc" xml:lang="en-US">Decrease due to refunds to customers and application to open balances.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_RestOfWorldMember" xlink:to="CODX_RestOfWorldMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_RestOfWorldMember_doc" xml:lang="en-US">Rest of World [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_NoncashLeaseExpense" xlink:to="CODX_NoncashLeaseExpense_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_NoncashLeaseExpense_doc" xml:lang="en-US">Noncash lease expense.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment" xlink:to="CODX_NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment_doc" xml:lang="en-US">Noncash or part noncash inventory moved to property plant and equipment..</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_BusinessAcquisitionMeasurementPeriodAdjustments" xlink:to="CODX_BusinessAcquisitionMeasurementPeriodAdjustments_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_BusinessAcquisitionMeasurementPeriodAdjustments_doc" xml:lang="en-US">Business acquisition measurement period adjustments.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions" xlink:to="CODX_FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions_doc" xml:lang="en-US">Fair value of contingent common stock and warrants issued as consideration for business acquisitions.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_TwoThousandFifteenLongTermIncentivePlanMember" xlink:to="CODX_TwoThousandFifteenLongTermIncentivePlanMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_TwoThousandFifteenLongTermIncentivePlanMember_doc" xml:lang="en-US">2015 Long Term Incentive Plan [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised_doc" xml:lang="en-US">Share based compensation arrangement by share based payment award options non vested weighted average grant date fair value exercised.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable_doc" xml:lang="en-US">Share based compensation arrangement by share based payment award options non vested weighted average grant date fair value exercisable.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm_doc" xml:lang="en-US">Sharebased compensation arrangement by sharebased payment award non options outstanding weighted average remaining contractual term.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_CustomersMember" xlink:to="CODX_CustomersMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_CustomersMember_doc" xml:lang="en-US">Customers [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_OneCustomerMember" xlink:to="CODX_OneCustomerMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_OneCustomerMember_doc" xml:lang="en-US">One Customer [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_TwoCustomersTogetherMember" xlink:to="CODX_TwoCustomersTogetherMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_TwoCustomersTogetherMember_doc" xml:lang="en-US">Two Customers Together [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_FourCustomersMember" xlink:to="CODX_FourCustomersMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_FourCustomersMember_doc" xml:lang="en-US">Four Customers [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_CustomersTogetherMember" xlink:to="CODX_CustomersTogetherMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_CustomersTogetherMember_doc" xml:lang="en-US">Customers Together [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_StockOptionsMember" xlink:to="CODX_StockOptionsMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_StockOptionsMember_doc" xml:lang="en-US">Stock Options [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_StockIssuedDuringPeriodSharesExchanged" xlink:to="CODX_StockIssuedDuringPeriodSharesExchanged_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_StockIssuedDuringPeriodSharesExchanged_doc" xml:lang="en-US">Stock issued during period shares exchanged.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember" xlink:to="CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember_doc" xml:lang="en-US">Advanced Conceptions, Inc. and Idaho Molecular, Inc. [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_StockIssuedDuringPeriodSharesContingentConsideration" xlink:to="CODX_StockIssuedDuringPeriodSharesContingentConsideration_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_StockIssuedDuringPeriodSharesContingentConsideration_doc" xml:lang="en-US">Stock issued during period shares contingent consideration.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration" xlink:to="CODX_ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration_doc" xml:lang="en-US">Share based compensation issued for adjustments to contingent purchase consideration.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_doc" xml:lang="en-US">Weighted average exercise price, beginning.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice" xlink:to="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice_doc" xml:lang="en-US">Issued For Adjustments To Contingent Purchase Consideration Period Weighted Average Exercise Price.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_doc" xml:lang="en-US">Weighted average exercise price granted.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_doc" xml:lang="en-US">Weighted average price at which grantees could have acquired the underlying shares with respect to non-options of the plan that expired.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_doc" xml:lang="en-US">Weighted average exercise price, forfeited/cancelled.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_doc" xml:lang="en-US">Weighted average exercise price, forfeited/cancelled.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice_doc" xml:lang="en-US">Weighted average price at which grantees can acquire the shares reserved for issuance under the non-option plan.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue" xlink:to="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_doc" xml:lang="en-US">Share based compensation arrangement by share based payment award non options outstanding weighted average fair value.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue" xlink:to="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue_doc" xml:lang="en-US">Issued for adjustments to contingent purchase consideration weighted average grant date fair value.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_doc" xml:lang="en-US">Weighted average grant date fair value, granted</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_doc" xml:lang="en-US">Share based compensation arrangement by share based payment award options non vested weighted average grant date fair value exercised.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_doc" xml:lang="en-US">Weighted average fair value, forfeited/cancelled.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue" xlink:to="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_doc" xml:lang="en-US">Weighted average fair value, exercised.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue_doc" xml:lang="en-US">Weighted average fair value, beginning.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1_doc" xml:lang="en-US">Weighted-average remaining contractual life (years) outstanding, beginning.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_doc" xml:lang="en-US">Sharebased compensation arrangement by sharebased payment award non options outstanding weighted average remaining contractual term3.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_RemeasurementOfAcquisitionContingencies" xlink:to="CODX_RemeasurementOfAcquisitionContingencies_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_RemeasurementOfAcquisitionContingencies_doc" xml:lang="en-US">Remeasurement of acquisition contingencies.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ACIAndIDMOMember" xlink:to="CODX_ACIAndIDMOMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ACIAndIDMOMember_doc" xml:lang="en-US">ACI And IDMO [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue" xlink:to="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue_doc" xml:lang="en-US">Intrinsic value of warrants exercised.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ClassOfWarrantExercisable" xlink:to="CODX_ClassOfWarrantExercisable_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ClassOfWarrantExercisable_doc" xml:lang="en-US">Class of warrant exercisable.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ThirdPartiesMember" xlink:to="CODX_ThirdPartiesMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ThirdPartiesMember_doc" xml:lang="en-US">Third Parties [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction" xlink:to="CODX_EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction_doc" xml:lang="en-US">Effective income tax rate reconcilation foreign derived intangible income deduction.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance" xlink:to="CODX_EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance_doc" xml:lang="en-US">Effective income tax rate reconciliation change in valuation allowance.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement" xlink:to="CODX_EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement_doc" xml:lang="en-US">Effective income tax rate reconciliation contingent consideration remeasurement.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_EffectiveIncomeTaxRateReconciliationGoodwillImpairment" xlink:to="CODX_EffectiveIncomeTaxRateReconciliationGoodwillImpairment_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_EffectiveIncomeTaxRateReconciliationGoodwillImpairment_doc" xml:lang="en-US">Effective income tax rate reconciliation Goodwill impairment.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_DeferredTaxAssetsLeaseLiability" xlink:to="CODX_DeferredTaxAssetsLeaseLiability_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_DeferredTaxAssetsLeaseLiability_doc" xml:lang="en-US">Deferred tax assets lease liability.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_DeferredTaxAssetsUniformCapitalization" xlink:to="CODX_DeferredTaxAssetsUniformCapitalization_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_DeferredTaxAssetsUniformCapitalization_doc" xml:lang="en-US">Deferred tax assets uniform capitalization.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_DeferredTaxLiabilitiesRightOfUseAsset" xlink:to="CODX_DeferredTaxLiabilitiesRightOfUseAsset_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_DeferredTaxLiabilitiesRightOfUseAsset_doc" xml:lang="en-US">Deferred tax liabilities right of use asset.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_NetDeferredTaxLiabilities" xlink:to="CODX_NetDeferredTaxLiabilities_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_NetDeferredTaxLiabilities_doc" xml:lang="en-US">Net deferred tax liabilities.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_PaymentsToShareHoldersValueAcquisitions" xlink:to="CODX_PaymentsToShareHoldersValueAcquisitions_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_PaymentsToShareHoldersValueAcquisitions_doc" xml:lang="en-US">Payments to share holders value acquisitions.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements" xlink:to="CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_doc" xml:lang="en-US">Business combination recognized identifiable assets acquired and liabilities non competition agreements.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_FairValueOfContingentConsiderationToCommonStock" xlink:to="CODX_FairValueOfContingentConsiderationToCommonStock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_FairValueOfContingentConsiderationToCommonStock_doc" xml:lang="en-US">Fair value of contingent consideration to common stock.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_FairValueOfContingentConsiderationToWarrants" xlink:to="CODX_FairValueOfContingentConsiderationToWarrants_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_FairValueOfContingentConsiderationToWarrants_doc" xml:lang="en-US">Fair value of contigent consideration to warrants.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ContingentConsideredIssuedForMeasurementPeriodAdjustments" xlink:to="CODX_ContingentConsideredIssuedForMeasurementPeriodAdjustments_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ContingentConsideredIssuedForMeasurementPeriodAdjustments_doc" xml:lang="en-US">Contingent considered issued for measurement period adjustments.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ContingentConsideredIssuedForBusinessAcquisitions" xlink:to="CODX_ContingentConsideredIssuedForBusinessAcquisitions_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ContingentConsideredIssuedForBusinessAcquisitions_doc" xml:lang="en-US">Contingent considered issued for business acquisitions.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_MeasurementInputStrikePriceMember" xlink:to="CODX_MeasurementInputStrikePriceMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_MeasurementInputStrikePriceMember_doc" xml:lang="en-US">Measurement Input Strike Price [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm" xlink:to="CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_doc" xml:lang="en-US">Value of input, expected term used to measure contingent consideration liability from business combination.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_MeasurementInputCostOfCapitalMember" xlink:to="CODX_MeasurementInputCostOfCapitalMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_MeasurementInputCostOfCapitalMember_doc" xml:lang="en-US">Measurement Input Cost of Capital [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_MeasurementInputEquityVolatilityMember" xlink:to="CODX_MeasurementInputEquityVolatilityMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_MeasurementInputEquityVolatilityMember_doc" xml:lang="en-US">Measurement Input Equity Volatility [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_MeasurementInputAssetVolatilityMember" xlink:to="CODX_MeasurementInputAssetVolatilityMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_MeasurementInputAssetVolatilityMember_doc" xml:lang="en-US">Measurement Input Asset Volatility [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_MeasurementInputRevenueVolatilityMember" xlink:to="CODX_MeasurementInputRevenueVolatilityMember_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_MeasurementInputRevenueVolatilityMember_doc" xml:lang="en-US">Measurement Input Revenue Volatility [Member]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ScheduleOfOperatingLeaseTableTextBlock" xlink:to="CODX_ScheduleOfOperatingLeaseTableTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ScheduleOfOperatingLeaseTableTextBlock_doc" xml:lang="en-US">Schedule of Operating Lease [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ScheduleOfTreasuryStockTableTextBlock" xlink:to="CODX_ScheduleOfTreasuryStockTableTextBlock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_ScheduleOfTreasuryStockTableTextBlock_doc" xml:lang="en-US">Schedule of Treasury Stock [Table Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_RepurchasesOfCommonStock" xlink:to="CODX_RepurchasesOfCommonStock_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_RepurchasesOfCommonStock_doc" xml:lang="en-US">Repurchases of common stock.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_StockIssuedDuringPeriodValueAcquisitionsAdjustments" xlink:to="CODX_StockIssuedDuringPeriodValueAcquisitionsAdjustments_doc" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="CODX_StockIssuedDuringPeriodValueAcquisitionsAdjustments_doc" xml:lang="en-US">Stock issued during period value acquisitions adjustments.</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsCurrent_2_lbl" xml:lang="en-US">Assets, Current</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NotesAndLoansReceivableNetNoncurrent" xlink:to="us-gaap_NotesAndLoansReceivableNetNoncurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NotesAndLoansReceivableNetNoncurrent_2_lbl" xml:lang="en-US">Financing Receivable, after Allowance for Credit Loss, Noncurrent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Assets_2_lbl" xml:lang="en-US">Assets [Default Label]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesCurrent_2_lbl" xml:lang="en-US">Liabilities, Current</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_TaxesPayableNoncurrent" xlink:to="CODX_TaxesPayableNoncurrent_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_TaxesPayableNoncurrent_3_lbl" xml:lang="en-US">TaxesPayableNoncurrent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesNoncurrent" xlink:to="us-gaap_LiabilitiesNoncurrent_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesNoncurrent_2_lbl" xml:lang="en-US">Liabilities, Noncurrent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Liabilities_2_lbl" xml:lang="en-US">Liabilities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_TreasuryStockValue_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TreasuryStockValue_2_lbl" xml:lang="en-US">Treasury Stock, Value</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_4_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquity_4_lbl" xml:lang="en-US">Stockholders' Equity Attributable to Parent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_2_lbl" xml:lang="en-US">Liabilities and Equity</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GrossProfit_2_lbl" xml:lang="en-US">Gross Profit</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_OperatingExpenses_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingExpenses_2_lbl" xml:lang="en-US">Operating Expenses</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingIncomeLoss_2_lbl" xml:lang="en-US">Operating Income (Loss)</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NonoperatingIncomeExpense_2_lbl" xml:lang="en-US">Nonoperating Income (Expense)</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_2_lbl" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_2_lbl" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesOutstanding" xlink:to="us-gaap_SharesOutstanding_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharesOutstanding_3_lbl" xml:lang="en-US">Shares, Outstanding</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchasedDuringPeriodValue" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue_2_lbl" xml:lang="en-US">Stock Repurchased During Period, Value</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationDepletionAndAmortization" xlink:to="us-gaap_DepreciationDepletionAndAmortization_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepreciationDepletionAndAmortization_2_lbl" xml:lang="en-US">Depreciation, Depletion and Amortization</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensation_2_lbl" xml:lang="en-US">Share-Based Payment Arrangement, Noncash Expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_2_lbl" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense_2_lbl" xml:lang="en-US">Increase (Decrease) in Prepaid Expense</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInInventories_2_lbl" xml:lang="en-US">Increase (Decrease) in Inventories</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_2_lbl" xml:lang="en-US">Increase (Decrease) in Contract with Customer, Liability</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_2_lbl" xml:lang="en-US">Increase (Decrease) in Income Taxes Payable</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_2_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_2_lbl" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireMarketableSecurities" xlink:to="us-gaap_PaymentsToAcquireMarketableSecurities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquireMarketableSecurities_2_lbl" xml:lang="en-US">Payments to Acquire Marketable Securities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromDivestitureOfInterestInJointVenture" xlink:to="us-gaap_ProceedsFromDivestitureOfInterestInJointVenture_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromDivestitureOfInterestInJointVenture_2_lbl" xml:lang="en-US">Proceeds from Divestiture of Interest in Joint Venture</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:to="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_2_lbl" xml:lang="en-US">Payments to Acquire Businesses, Net of Cash Acquired</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_2_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock_2_lbl" xml:lang="en-US">Payments for Repurchase of Common Stock</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_2_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_2_lbl" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_3_lbl" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_2_lbl" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryPolicyTextBlock" xlink:to="us-gaap_InventoryPolicyTextBlock_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryPolicyTextBlock_2_lbl" xml:lang="en-US">Inventory, Policy [Policy Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:to="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_2_lbl" xml:lang="en-US">Goodwill and Intangible Assets, Policy [Policy Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationsPolicy" xlink:to="us-gaap_BusinessCombinationsPolicy_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationsPolicy_2_lbl" xml:lang="en-US">Business Combinations Policy [Policy Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxPolicyTextBlock" xlink:to="us-gaap_IncomeTaxPolicyTextBlock_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxPolicyTextBlock_2_lbl" xml:lang="en-US">Income Tax, Policy [Policy Text Block]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_2_lbl" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_2_lbl" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent" xlink:to="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent_3_lbl" xml:lang="en-US">Business Combination, Contingent Consideration, Liability, Noncurrent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm" xlink:to="CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_3_lbl" xml:lang="en-US">BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_2_lbl" xml:lang="en-US">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_2_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Net</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_2_lbl" xml:lang="en-US">Revenue from Contract with Customer, Including Assessed Tax</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiability" xlink:to="us-gaap_ContractWithCustomerLiability_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerLiability_3_lbl" xml:lang="en-US">Contract with Customer, Liability</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:to="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized_2_lbl" xml:lang="en-US">Contract with Customer, Liability, Revenue Recognized</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances" xlink:to="CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances_3_lbl" xml:lang="en-US">DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_3_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_3_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_3_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Option, Nonvested, Weighted Average Exercise Price</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_2_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Number</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_2_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable_3_lbl" xml:lang="en-US">SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_3_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_3_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_2_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_2_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_3_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Outstanding, Number</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_3_lbl" xml:lang="en-US">ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue" xlink:to="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_3_lbl" xml:lang="en-US">ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_3_lbl" xml:lang="en-US">ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_3_lbl" xml:lang="en-US">SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations_2_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Expirations</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_3_lbl" xml:lang="en-US">Weighted Average Exercise Price, Expired [Default Label]</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_3_lbl" xml:lang="en-US">SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_3_lbl" xml:lang="en-US">ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_3_lbl" xml:lang="en-US">SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_2_lbl" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Exercised</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_3_lbl" xml:lang="en-US">ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue" xlink:to="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_3_lbl" xml:lang="en-US">ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_3_lbl" xml:lang="en-US">SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice" xlink:to="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice_3_lbl" xml:lang="en-US">ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue" xlink:to="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue_3_lbl" xml:lang="en-US">SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit" xlink:to="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit_2_lbl" xml:lang="en-US">Current Federal, State and Local, Tax Expense (Benefit)</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_2_lbl" xml:lang="en-US">Deferred Federal Income Tax Expense (Benefit)</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_2_lbl" xml:lang="en-US">Deferred State and Local Income Tax Expense (Benefit)</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit" xlink:to="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit_2_lbl" xml:lang="en-US">Deferred Federal, State and Local, Tax Expense (Benefit)</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment_2_lbl" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Nondeductible Expense, Research and Development, Percent</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsGross" xlink:to="us-gaap_DeferredTaxAssetsGross_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsGross_2_lbl" xml:lang="en-US">Deferred Tax Assets, Gross</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_2_lbl" xml:lang="en-US">Deferred Tax Liabilities, Property, Plant and Equipment</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:to="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_2_lbl" xml:lang="en-US">Deferred Tax Liabilities, Intangible Assets</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:to="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxLiabilitiesPrepaidExpenses_2_lbl" xml:lang="en-US">Deferred Tax Liabilities, Prepaid Expenses</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesOtherComprehensiveIncome" xlink:to="us-gaap_DeferredTaxLiabilitiesOtherComprehensiveIncome_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxLiabilitiesOtherComprehensiveIncome_2_lbl" xml:lang="en-US">Deferred Tax Liabilities, Other Comprehensive Income</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesOther" xlink:to="us-gaap_DeferredTaxLiabilitiesOther_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxLiabilitiesOther_2_lbl" xml:lang="en-US">Deferred Tax Liabilities, Other</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredIncomeTaxLiabilities_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_2_lbl" xml:lang="en-US">Deferred Tax Liabilities, Gross</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:to="us-gaap_DeferredTaxAssetsLiabilitiesNet_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsLiabilitiesNet_2_lbl" xml:lang="en-US">Deferred Tax Assets, Net</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefits" xlink:to="us-gaap_UnrecognizedTaxBenefits_3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_UnrecognizedTaxBenefits_3_lbl" xml:lang="en-US">Unrecognized Tax Benefits</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:to="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_2_lbl" xml:lang="en-US">Unrecognized Tax Benefits, Decrease Resulting from Prior Period Tax Positions</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued" xlink:to="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued_2_lbl" xml:lang="en-US">Unrecognized Tax Benefits, Income Tax Penalties Accrued</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseCost" xlink:to="us-gaap_LeaseCost_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LeaseCost_2_lbl" xml:lang="en-US">Lease, Cost</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_2_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year One</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_2_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Two</link:label>
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_2_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid</link:label>
    </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>12
<FILENAME>codx-20221231_pre.xml
<DESCRIPTION>INLINE XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 5.17c -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef roleURI="http://codiagnostics.com/role/Cover" xlink:href="codx-20221231.xsd#Cover" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BalanceSheets" xlink:href="codx-20221231.xsd#BalanceSheets" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BalanceSheetsParenthetical" xlink:href="codx-20221231.xsd#BalanceSheetsParenthetical" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss" xlink:href="codx-20221231.xsd#StatementsOfOperationsAndComprehensiveIncomeLoss" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity" xlink:href="codx-20221231.xsd#StatementOfChangesInStockholdersEquity" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/StatementsOfCashFlows" xlink:href="codx-20221231.xsd#StatementsOfCashFlows" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/OverviewAndBasisOfPresentation" xlink:href="codx-20221231.xsd#OverviewAndBasisOfPresentation" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SummaryOfSignificantAccountingPolicies" xlink:href="codx-20221231.xsd#SummaryOfSignificantAccountingPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstruments" xlink:href="codx-20221231.xsd#CashCashEquivalentsAndFinancialInstruments" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BusinessCombinations" xlink:href="codx-20221231.xsd#BusinessCombinations" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/FairValueMeasurements" xlink:href="codx-20221231.xsd#FairValueMeasurements" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/PropertyAndEquipment" xlink:href="codx-20221231.xsd#PropertyAndEquipment" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/GoodwillAndIntangibleAssets" xlink:href="codx-20221231.xsd#GoodwillAndIntangibleAssets" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/AccruedExpenses" xlink:href="codx-20221231.xsd#AccruedExpenses" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/Revenue" xlink:href="codx-20221231.xsd#Revenue" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/EarningsPerShare" xlink:href="codx-20221231.xsd#EarningsPerShare" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/Stock-basedCompensation" xlink:href="codx-20221231.xsd#Stock-basedCompensation" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/IncomeTaxes" xlink:href="codx-20221231.xsd#IncomeTaxes" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/CommitmentsAndContingencies" xlink:href="codx-20221231.xsd#CommitmentsAndContingencies" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ShareRepurchaseProgram" xlink:href="codx-20221231.xsd#ShareRepurchaseProgram" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SubsequentEvents" xlink:href="codx-20221231.xsd#SubsequentEvents" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:href="codx-20221231.xsd#SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstrumentsTables" xlink:href="codx-20221231.xsd#CashCashEquivalentsAndFinancialInstrumentsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BusinessCombinationsTables" xlink:href="codx-20221231.xsd#BusinessCombinationsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/FairValueMeasurementsTables" xlink:href="codx-20221231.xsd#FairValueMeasurementsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/PropertyAndEquipmentTables" xlink:href="codx-20221231.xsd#PropertyAndEquipmentTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/GoodwillAndIntangibleAssetsTables" xlink:href="codx-20221231.xsd#GoodwillAndIntangibleAssetsTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/AccruedExpensesTables" xlink:href="codx-20221231.xsd#AccruedExpensesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/RevenueTables" xlink:href="codx-20221231.xsd#RevenueTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/EarningsPerShareTables" xlink:href="codx-20221231.xsd#EarningsPerShareTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/Stock-basedCompensationTables" xlink:href="codx-20221231.xsd#Stock-basedCompensationTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/IncomeTaxesTables" xlink:href="codx-20221231.xsd#IncomeTaxesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/CommitmentsAndContingenciesTables" xlink:href="codx-20221231.xsd#CommitmentsAndContingenciesTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ShareRepurchaseProgramTables" xlink:href="codx-20221231.xsd#ShareRepurchaseProgramTables" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative" xlink:href="codx-20221231.xsd#SummaryOfSignificantAccountingPoliciesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails" xlink:href="codx-20221231.xsd#ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails" xlink:href="codx-20221231.xsd#ScheduleOfAssetsAndLiabilitiesAssumedDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative" xlink:href="codx-20221231.xsd#BusinessCombinationsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails" xlink:href="codx-20221231.xsd#ScheduleOfFairValueAssetsAndLiabilitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfChangesInFairValueMeasurementDetails" xlink:href="codx-20221231.xsd#ScheduleOfChangesInFairValueMeasurementDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails" xlink:href="codx-20221231.xsd#ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails" xlink:href="codx-20221231.xsd#ScheduleOfPropertyAndEquipmentDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfGoodwillDetails" xlink:href="codx-20221231.xsd#ScheduleOfGoodwillDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails" xlink:href="codx-20221231.xsd#ScheduleOfIntangibleAssetsNetDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails" xlink:href="codx-20221231.xsd#ScheduleOfFutureAmortizationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/GoodwillAndIntangibleAssetsDetailsNarrative" xlink:href="codx-20221231.xsd#GoodwillAndIntangibleAssetsDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails" xlink:href="codx-20221231.xsd#ScheduleOfAccruedExpensesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails" xlink:href="codx-20221231.xsd#SummaryOfRevenueByGeographicAreaDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfDeferredRevenueDetails" xlink:href="codx-20221231.xsd#ScheduleOfDeferredRevenueDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails" xlink:href="codx-20221231.xsd#ScheduleOfBasicAndDilutedEarningsPerShareDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/EarningsPerShareDetailsNarrative" xlink:href="codx-20221231.xsd#EarningsPerShareDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfOptionActivityDetails" xlink:href="codx-20221231.xsd#ScheduleOfOptionActivityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails" xlink:href="codx-20221231.xsd#ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails" xlink:href="codx-20221231.xsd#ScheduleOfWarrantActivityDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails" xlink:href="codx-20221231.xsd#ScheduleOfRecognizedStock-basedCompensationExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative" xlink:href="codx-20221231.xsd#Stock-basedCompensationDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails" xlink:href="codx-20221231.xsd#ScheduleOfComponentsIncomeTaxProvisionDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails" xlink:href="codx-20221231.xsd#ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails" xlink:href="codx-20221231.xsd#ScheduleOfDeferredTaxAssetsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfUnrecognizedTaxBenefitsDetails" xlink:href="codx-20221231.xsd#ScheduleOfUnrecognizedTaxBenefitsDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/IncomeTaxesDetailsNarrative" xlink:href="codx-20221231.xsd#IncomeTaxesDetailsNarrative" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails" xlink:href="codx-20221231.xsd#ScheduleOfLeaseExpenseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails" xlink:href="codx-20221231.xsd#ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfOtherInformationRelatedToOperatingLeaseDetails" xlink:href="codx-20221231.xsd#ScheduleOfOtherInformationRelatedToOperatingLeaseDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ScheduleOfTreasuryStockDetails" xlink:href="codx-20221231.xsd#ScheduleOfTreasuryStockDetails" xlink:type="simple" />
    <link:roleRef roleURI="http://codiagnostics.com/role/ShareRepurchaseProgramDetailsNarrative" xlink:href="codx-20221231.xsd#ShareRepurchaseProgramDetailsNarrative" xlink:type="simple" />
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Cover" xlink:title="00000001 - Document - Cover">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract" xlink:label="loc_deiCoverAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType" xlink:label="loc_deiDocumentType" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentType" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag" xlink:label="loc_deiAmendmentFlag" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAmendmentFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentDescription" xlink:label="loc_deiAmendmentDescription" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAmendmentDescription" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentRegistrationStatement" xlink:label="loc_deiDocumentRegistrationStatement" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentRegistrationStatement" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentAnnualReport" xlink:label="loc_deiDocumentAnnualReport" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentAnnualReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentQuarterlyReport" xlink:label="loc_deiDocumentQuarterlyReport" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentQuarterlyReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentTransitionReport" xlink:label="loc_deiDocumentTransitionReport" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentTransitionReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentShellCompanyReport" xlink:label="loc_deiDocumentShellCompanyReport" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentShellCompanyReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentShellCompanyEventDate" xlink:label="loc_deiDocumentShellCompanyEventDate" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentShellCompanyEventDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodStartDate" xlink:label="loc_deiDocumentPeriodStartDate" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentPeriodStartDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_deiDocumentPeriodEndDate" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentPeriodEndDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_deiDocumentFiscalPeriodFocus" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentFiscalPeriodFocus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_deiDocumentFiscalYearFocus" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentFiscalYearFocus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_deiCurrentFiscalYearEndDate" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCurrentFiscalYearEndDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber" xlink:label="loc_deiEntityFileNumber" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityFileNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName" xlink:label="loc_deiEntityRegistrantName" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityRegistrantName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey" xlink:label="loc_deiEntityCentralIndexKey" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCentralIndexKey" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityPrimarySicNumber" xlink:label="loc_deiEntityPrimarySicNumber" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityPrimarySicNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_deiEntityTaxIdentificationNumber" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityTaxIdentificationNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_deiEntityIncorporationStateCountryCode" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityIncorporationStateCountryCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_deiEntityAddressAddressLine1" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine2" xlink:label="loc_deiEntityAddressAddressLine2" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine2" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine3" xlink:label="loc_deiEntityAddressAddressLine3" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine3" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_deiEntityAddressCityOrTown" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressCityOrTown" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_deiEntityAddressStateOrProvince" />
      <link:presentationArc order="240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressStateOrProvince" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCountry" xlink:label="loc_deiEntityAddressCountry" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressCountry" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_deiEntityAddressPostalZipCode" />
      <link:presentationArc order="260" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressPostalZipCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CountryRegion" xlink:label="loc_deiCountryRegion" />
      <link:presentationArc order="270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCountryRegion" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode" xlink:label="loc_deiCityAreaCode" />
      <link:presentationArc order="280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCityAreaCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber" xlink:label="loc_deiLocalPhoneNumber" />
      <link:presentationArc order="290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiLocalPhoneNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Extension" xlink:label="loc_deiExtension" />
      <link:presentationArc order="300" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiExtension" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_WrittenCommunications" xlink:label="loc_deiWrittenCommunications" />
      <link:presentationArc order="310" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiWrittenCommunications" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SolicitingMaterial" xlink:label="loc_deiSolicitingMaterial" />
      <link:presentationArc order="320" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSolicitingMaterial" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_PreCommencementTenderOffer" xlink:label="loc_deiPreCommencementTenderOffer" />
      <link:presentationArc order="330" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiPreCommencementTenderOffer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="loc_deiPreCommencementIssuerTenderOffer" />
      <link:presentationArc order="340" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiPreCommencementIssuerTenderOffer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle" xlink:label="loc_deiSecurity12bTitle" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurity12bTitle" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_NoTradingSymbolFlag" xlink:label="loc_deiNoTradingSymbolFlag" />
      <link:presentationArc order="360" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiNoTradingSymbolFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol" xlink:label="loc_deiTradingSymbol" />
      <link:presentationArc order="370" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiTradingSymbol" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName" xlink:label="loc_deiSecurityExchangeName" />
      <link:presentationArc order="380" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurityExchangeName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12gTitle" xlink:label="loc_deiSecurity12gTitle" />
      <link:presentationArc order="390" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurity12gTitle" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityReportingObligation" xlink:label="loc_deiSecurityReportingObligation" />
      <link:presentationArc order="400" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurityReportingObligation" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AnnualInformationForm" xlink:label="loc_deiAnnualInformationForm" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAnnualInformationForm" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditedAnnualFinancialStatements" xlink:label="loc_deiAuditedAnnualFinancialStatements" />
      <link:presentationArc order="420" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAuditedAnnualFinancialStatements" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="loc_deiEntityWellKnownSeasonedIssuer" />
      <link:presentationArc order="430" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityWellKnownSeasonedIssuer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityVoluntaryFilers" xlink:label="loc_deiEntityVoluntaryFilers" />
      <link:presentationArc order="440" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityVoluntaryFilers" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_deiEntityCurrentReportingStatus" />
      <link:presentationArc order="450" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCurrentReportingStatus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_deiEntityInteractiveDataCurrent" />
      <link:presentationArc order="460" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityInteractiveDataCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory" xlink:label="loc_deiEntityFilerCategory" />
      <link:presentationArc order="470" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityFilerCategory" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness" xlink:label="loc_deiEntitySmallBusiness" />
      <link:presentationArc order="480" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntitySmallBusiness" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_deiEntityEmergingGrowthCompany" />
      <link:presentationArc order="490" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityEmergingGrowthCompany" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityExTransitionPeriod" xlink:label="loc_deiEntityExTransitionPeriod" />
      <link:presentationArc order="500" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityExTransitionPeriod" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentAccountingStandard" xlink:label="loc_deiDocumentAccountingStandard" />
      <link:presentationArc order="510" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentAccountingStandard" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_OtherReportingStandardItemNumber" xlink:label="loc_deiOtherReportingStandardItemNumber" />
      <link:presentationArc order="520" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiOtherReportingStandardItemNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany" xlink:label="loc_deiEntityShellCompany" />
      <link:presentationArc order="530" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityShellCompany" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityPublicFloat" xlink:label="loc_deiEntityPublicFloat" />
      <link:presentationArc order="540" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityPublicFloat" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityBankruptcyProceedingsReportingCurrent" xlink:label="loc_deiEntityBankruptcyProceedingsReportingCurrent" />
      <link:presentationArc order="550" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityBankruptcyProceedingsReportingCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_deiEntityCommonStockSharesOutstanding" />
      <link:presentationArc order="560" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCommonStockSharesOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="loc_deiDocumentsIncorporatedByReferenceTextBlock" />
      <link:presentationArc order="570" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentsIncorporatedByReferenceTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="loc_deiIcfrAuditorAttestationFlag" />
      <link:presentationArc order="580" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiIcfrAuditorAttestationFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorFirmId" xlink:label="loc_deiAuditorFirmId" />
      <link:presentationArc order="590" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAuditorFirmId" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorName" xlink:label="loc_deiAuditorName" />
      <link:presentationArc order="600" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAuditorName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AuditorLocation" xlink:label="loc_deiAuditorLocation" />
      <link:presentationArc order="610" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAuditorLocation" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BalanceSheets" xlink:title="00000002 - Statement - Consolidated Balance Sheets">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaapStatementOfFinancialPositionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaapAssetsAbstract" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapAssetsAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaapAssetsCurrentAbstract" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapAssetsCurrentAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaapCashAndCashEquivalentsAtCarryingValue" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapCashAndCashEquivalentsAtCarryingValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MarketableSecuritiesCurrent" xlink:label="loc_us-gaapMarketableSecuritiesCurrent" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapMarketableSecuritiesCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaapAccountsReceivableNetCurrent" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapAccountsReceivableNetCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapInventoryNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxReceivable" xlink:label="loc_us-gaapIncomeTaxReceivable" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapIncomeTaxReceivable" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="loc_us-gaapPrepaidExpenseAndOtherAssetsCurrent" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapPrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesAndLoansReceivableNetCurrent" xlink:label="loc_us-gaapNotesAndLoansReceivableNetCurrent" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapNotesAndLoansReceivableNetCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaapAssetsCurrent" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsCurrentAbstract" xlink:to="loc_us-gaapAssetsCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaapOperatingLeaseRightOfUseAsset" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapOperatingLeaseRightOfUseAsset" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapGoodwill" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RealEstateInvestmentsJointVentures" xlink:label="loc_us-gaapRealEstateInvestmentsJointVentures" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapRealEstateInvestmentsJointVentures" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesAndLoansReceivableNetNoncurrent" xlink:label="loc_us-gaapNotesAndLoansReceivableNetNoncurrent" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapNotesAndLoansReceivableNetNoncurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets" xlink:label="loc_us-gaapAssets" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAssetsAbstract" xlink:to="loc_us-gaapAssets" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaapLiabilitiesCurrentAbstract" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" xlink:to="loc_us-gaapLiabilitiesCurrentAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaapAccountsPayableCurrent" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapAccountsPayableCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaapAccruedLiabilitiesCurrent" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapAccruedLiabilitiesCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityCurrent" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapOperatingLeaseLiabilityCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetAcquisitionContingentConsiderationLiabilityCurrent" xlink:label="loc_us-gaapAssetAcquisitionContingentConsiderationLiabilityCurrent" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapAssetAcquisitionContingentConsiderationLiabilityCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TaxesPayableCurrent" xlink:label="loc_us-gaapTaxesPayableCurrent" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapTaxesPayableCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityCurrent" />
      <link:presentationArc order="240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapContractWithCustomerLiabilityCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaapLiabilitiesCurrent" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract" xlink:to="loc_us-gaapLiabilitiesCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="loc_us-gaapLiabilitiesNoncurrentAbstract" />
      <link:presentationArc order="260" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" xlink:to="loc_us-gaapLiabilitiesNoncurrentAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_TaxesPayableNoncurrent" xlink:label="loc_CODXTaxesPayableNoncurrent" />
      <link:presentationArc order="270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesNoncurrentAbstract" xlink:to="loc_CODXTaxesPayableNoncurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaapDeferredIncomeTaxLiabilitiesNet" />
      <link:presentationArc order="280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesNoncurrentAbstract" xlink:to="loc_us-gaapDeferredIncomeTaxLiabilitiesNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityNoncurrent" />
      <link:presentationArc order="290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesNoncurrentAbstract" xlink:to="loc_us-gaapOperatingLeaseLiabilityNoncurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetAcquisitionContingentConsiderationLiabilityNoncurrent" xlink:label="loc_us-gaapAssetAcquisitionContingentConsiderationLiabilityNoncurrent" />
      <link:presentationArc order="300" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesNoncurrentAbstract" xlink:to="loc_us-gaapAssetAcquisitionContingentConsiderationLiabilityNoncurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="loc_us-gaapLiabilitiesNoncurrent" />
      <link:presentationArc order="310" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesNoncurrentAbstract" xlink:to="loc_us-gaapLiabilitiesNoncurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaapLiabilities" />
      <link:presentationArc order="320" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" xlink:to="loc_us-gaapLiabilities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="loc_us-gaapCommitmentsAndContingencies" />
      <link:presentationArc order="330" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" xlink:to="loc_us-gaapCommitmentsAndContingencies" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="loc_us-gaapStockholdersEquityAbstract" />
      <link:presentationArc order="340" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" xlink:to="loc_us-gaapStockholdersEquityAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaapPreferredStockValue" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapPreferredStockValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaapCommonStockValue" />
      <link:presentationArc order="360" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapCommonStockValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockValue" xlink:label="loc_us-gaapTreasuryStockValue" />
      <link:presentationArc order="370" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapTreasuryStockValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="loc_us-gaapAdditionalPaidInCapital" />
      <link:presentationArc order="380" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapAdditionalPaidInCapital" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" />
      <link:presentationArc order="390" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaapRetainedEarningsAccumulatedDeficit" />
      <link:presentationArc order="400" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapRetainedEarningsAccumulatedDeficit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract" xlink:to="loc_us-gaapStockholdersEquity" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaapLiabilitiesAndStockholdersEquity" />
      <link:presentationArc order="420" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract" xlink:to="loc_us-gaapLiabilitiesAndStockholdersEquity" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BalanceSheetsParenthetical" xlink:title="00000003 - Statement - Consolidated Balance Sheets (Parenthetical)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaapStatementOfFinancialPositionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="loc_us-gaapPreferredStockParOrStatedValuePerShare" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapPreferredStockParOrStatedValuePerShare" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="loc_us-gaapPreferredStockSharesAuthorized" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapPreferredStockSharesAuthorized" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="loc_us-gaapPreferredStockSharesIssued" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapPreferredStockSharesIssued" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="loc_us-gaapPreferredStockSharesOutstanding" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapPreferredStockSharesOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaapCommonStockParOrStatedValuePerShare" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapCommonStockParOrStatedValuePerShare" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaapCommonStockSharesAuthorized" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapCommonStockSharesAuthorized" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaapCommonStockSharesIssued" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapCommonStockSharesIssued" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="loc_us-gaapCommonStockSharesOutstanding" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapCommonStockSharesOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockShares" xlink:label="loc_us-gaapTreasuryStockShares" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract" xlink:to="loc_us-gaapTreasuryStockShares" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss" xlink:title="00000004 - Statement - Consolidated Statements of Operations and Comprehensive Income (Loss)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaapIncomeStatementAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapRevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfRevenue" xlink:label="loc_us-gaapCostOfRevenue" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapCostOfRevenue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaapGrossProfit" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapGrossProfit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="loc_us-gaapOperatingExpensesAbstract" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapOperatingExpensesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaapSellingAndMarketingExpense" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapSellingAndMarketingExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaapGeneralAndAdministrativeExpense" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapGeneralAndAdministrativeExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaapResearchAndDevelopmentExpense" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapResearchAndDevelopmentExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationAndAmortization" xlink:label="loc_us-gaapDepreciationAndAmortization" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapDepreciationAndAmortization" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="loc_us-gaapGoodwillImpairmentLoss" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapGoodwillImpairmentLoss" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaapOperatingExpenses" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract" xlink:to="loc_us-gaapOperatingExpenses" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaapOperatingIncomeLoss" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapOperatingIncomeLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="loc_us-gaapNonoperatingIncomeExpenseAbstract" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapNonoperatingIncomeExpenseAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestIncomeOther" xlink:label="loc_us-gaapInterestIncomeOther" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNonoperatingIncomeExpenseAbstract" xlink:to="loc_us-gaapInterestIncomeOther" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="loc_us-gaapGainLossOnDispositionOfAssets1" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNonoperatingIncomeExpenseAbstract" xlink:to="loc_us-gaapGainLossOnDispositionOfAssets1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_GainOnRemeasurementOfAcquisitionContingencies" xlink:label="loc_CODXGainOnRemeasurementOfAcquisitionContingencies" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNonoperatingIncomeExpenseAbstract" xlink:to="loc_CODXGainOnRemeasurementOfAcquisitionContingencies" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfInvestments" xlink:label="loc_us-gaapGainLossOnSaleOfInvestments" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNonoperatingIncomeExpenseAbstract" xlink:to="loc_us-gaapGainLossOnSaleOfInvestments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaapNonoperatingIncomeExpense" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNonoperatingIncomeExpenseAbstract" xlink:to="loc_us-gaapNonoperatingIncomeExpense" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapOtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossBeforeTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossBeforeTax" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossBeforeTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTax" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapComprehensiveIncomeNetOfTax" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasicAbstract" xlink:label="loc_us-gaapEarningsPerShareBasicAbstract" />
      <link:presentationArc order="240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapEarningsPerShareBasicAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaapEarningsPerShareBasic" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareBasicAbstract" xlink:to="loc_us-gaapEarningsPerShareBasic" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaapEarningsPerShareDiluted" />
      <link:presentationArc order="260" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareBasicAbstract" xlink:to="loc_us-gaapEarningsPerShareDiluted" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:label="loc_us-gaapWeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" />
      <link:presentationArc order="270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract" xlink:to="loc_us-gaapWeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic" />
      <link:presentationArc order="280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapWeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding" />
      <link:presentationArc order="290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapWeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity" xlink:title="00000005 - Statement - Consolidated Statement of Changes in Stockholders&apos; Equity">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaapStatementOfStockholdersEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfStockholdersEquityAbstract" xlink:to="loc_us-gaapStatementTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaapStatementClassOfStockAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementClassOfStockAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaapClassOfStockDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementClassOfStockAxis" xlink:to="loc_us-gaapClassOfStockDomain" order="70" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConvertiblePreferredStockMember" xlink:label="loc_us-gaapConvertiblePreferredStockMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementClassOfStockAxis" xlink:to="loc_us-gaapConvertiblePreferredStockMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaapStatementEquityComponentsAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain" order="70" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockMember" xlink:label="loc_us-gaapPreferredStockMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapPreferredStockMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaapCommonStockMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapCommonStockMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockMember" xlink:label="loc_us-gaapTreasuryStockMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapTreasuryStockMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaapAdditionalPaidInCapitalMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapAdditionalPaidInCapitalMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaapRetainedEarningsMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapRetainedEarningsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockholdersEquity" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaapSharesOutstanding" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapSharesOutstanding" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodValueStockOptionsExercised" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodValueStockOptionsExercised" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" xlink:label="loc_us-gaapStockIssuedDuringPeriodValueShareBasedCompensationGross" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodValueShareBasedCompensationGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesShareBasedCompensationGross" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:label="loc_us-gaapStockIssuedDuringPeriodValueAcquisitions" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodValueAcquisitions" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesAcquisitions" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesAcquisitions" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesAcquisitions" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueOther" xlink:label="loc_us-gaapStockIssuedDuringPeriodValueOther" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodValueOther" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesOther" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesOther" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesOther" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="loc_us-gaapStockRepurchasedDuringPeriodValue" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockRepurchasedDuringPeriodValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossNetOfTax" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity_2" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockholdersEquity_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding" xlink:label="loc_us-gaapSharesOutstanding_2" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapSharesOutstanding_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/StatementsOfCashFlows" xlink:title="00000006 - Statement - Consolidated Statements of Cash Flows">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaapStatementOfCashFlowsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaapDepreciationDepletionAndAmortization" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapDepreciationDepletionAndAmortization" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="loc_us-gaapGoodwillImpairmentLoss" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapGoodwillImpairmentLoss" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaapShareBasedCompensation" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapShareBasedCompensation" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_GainOnRemeasurementOfAcquisitionContingencies" xlink:label="loc_CODXGainOnRemeasurementOfAcquisitionContingencies" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_CODXGainOnRemeasurementOfAcquisitionContingencies" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_NoncashLeaseExpense" xlink:label="loc_CODXNoncashLeaseExpense" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_CODXNoncashLeaseExpense" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfInvestments" xlink:label="loc_us-gaapGainLossOnSaleOfInvestments" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapGainLossOnSaleOfInvestments" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="loc_us-gaapGainLossOnDispositionOfAssets1" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapGainLossOnDispositionOfAssets1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredIncomeTaxExpenseBenefit" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapDeferredIncomeTaxExpenseBenefit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="loc_us-gaapProvisionForDoubtfulAccounts" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapProvisionForDoubtfulAccounts" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaapIncreaseDecreaseInAccountsReceivable" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInAccountsReceivable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="loc_us-gaapIncreaseDecreaseInPrepaidExpense" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInPrepaidExpense" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaapIncreaseDecreaseInInventories" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInInventories" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="loc_us-gaapIncreaseDecreaseInContractWithCustomerLiability" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInContractWithCustomerLiability" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="loc_us-gaapIncreaseDecreaseInAccountsPayableAndAccruedLiabilities" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract" xlink:to="loc_us-gaapIncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:label="loc_us-gaapProceedsFromSaleAndMaturityOfMarketableSecurities" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapProceedsFromSaleAndMaturityOfMarketableSecurities" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireMarketableSecurities" xlink:label="loc_us-gaapPaymentsToAcquireMarketableSecurities" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapPaymentsToAcquireMarketableSecurities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromDivestitureOfInterestInJointVenture" xlink:label="loc_us-gaapProceedsFromDivestitureOfInterestInJointVenture" />
      <link:presentationArc order="240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapProceedsFromDivestitureOfInterestInJointVenture" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaapPaymentsToAcquireBusinessesNetOfCashAcquired" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapPaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" />
      <link:presentationArc order="260" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" />
      <link:presentationArc order="270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock" xlink:label="loc_us-gaapProceedsFromIssuanceOfCommonStock" />
      <link:presentationArc order="280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapProceedsFromIssuanceOfCommonStock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="loc_us-gaapPaymentsForRepurchaseOfCommonStock" />
      <link:presentationArc order="290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapPaymentsForRepurchaseOfCommonStock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" />
      <link:presentationArc order="300" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
      <link:presentationArc order="310" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
      <link:presentationArc order="320" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_2" />
      <link:presentationArc order="330" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="loc_us-gaapSupplementalCashFlowInformationAbstract" />
      <link:presentationArc order="340" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapSupplementalCashFlowInformationAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestPaidNet" xlink:label="loc_us-gaapInterestPaidNet" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSupplementalCashFlowInformationAbstract" xlink:to="loc_us-gaapInterestPaidNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="loc_us-gaapIncomeTaxesPaidNet" />
      <link:presentationArc order="360" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSupplementalCashFlowInformationAbstract" xlink:to="loc_us-gaapIncomeTaxesPaidNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="loc_us-gaapNoncashInvestingAndFinancingItemsAbstract" />
      <link:presentationArc order="370" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract" xlink:to="loc_us-gaapNoncashInvestingAndFinancingItemsAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment" xlink:label="loc_CODXNoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment" />
      <link:presentationArc order="380" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNoncashInvestingAndFinancingItemsAbstract" xlink:to="loc_CODXNoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="loc_us-gaapRightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" />
      <link:presentationArc order="390" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNoncashInvestingAndFinancingItemsAbstract" xlink:to="loc_us-gaapRightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_BusinessAcquisitionMeasurementPeriodAdjustments" xlink:label="loc_CODXBusinessAcquisitionMeasurementPeriodAdjustments" />
      <link:presentationArc order="400" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNoncashInvestingAndFinancingItemsAbstract" xlink:to="loc_CODXBusinessAcquisitionMeasurementPeriodAdjustments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_StockIssuedDuringPeriodValueAcquisitionsAdjustments" xlink:label="loc_CODXStockIssuedDuringPeriodValueAcquisitionsAdjustments" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNoncashInvestingAndFinancingItemsAbstract" xlink:to="loc_CODXStockIssuedDuringPeriodValueAcquisitionsAdjustments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions" xlink:label="loc_CODXFairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions" />
      <link:presentationArc order="420" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNoncashInvestingAndFinancingItemsAbstract" xlink:to="loc_CODXFairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/OverviewAndBasisOfPresentation" xlink:title="00000007 - Disclosure - Overview and Basis of Presentation">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:label="loc_us-gaapBusinessDescriptionAndBasisOfPresentationTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapBusinessDescriptionAndBasisOfPresentationTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SummaryOfSignificantAccountingPolicies" xlink:title="00000008 - Disclosure - Summary of Significant Accounting Policies">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaapSignificantAccountingPoliciesTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapSignificantAccountingPoliciesTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstruments" xlink:title="00000009 - Disclosure - Cash, Cash Equivalents, and Financial Instruments">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="loc_us-gaapCashAndCashEquivalentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsAndMarketableSecuritiesTextBlock" xlink:label="loc_us-gaapCashCashEquivalentsAndMarketableSecuritiesTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCashAndCashEquivalentsAbstract" xlink:to="loc_us-gaapCashCashEquivalentsAndMarketableSecuritiesTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BusinessCombinations" xlink:title="00000010 - Disclosure - Business Combinations">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="loc_us-gaapBusinessCombinationAndAssetAcquisitionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="loc_us-gaapBusinessCombinationDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessCombinationAndAssetAcquisitionAbstract" xlink:to="loc_us-gaapBusinessCombinationDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/FairValueMeasurements" xlink:title="00000011 - Disclosure - Fair Value Measurements">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaapFairValueDisclosuresAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="loc_us-gaapFairValueDisclosuresTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueDisclosuresAbstract" xlink:to="loc_us-gaapFairValueDisclosuresTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/PropertyAndEquipment" xlink:title="00000012 - Disclosure - Property and Equipment">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaapPropertyPlantAndEquipmentAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="loc_us-gaapPropertyPlantAndEquipmentDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentAbstract" xlink:to="loc_us-gaapPropertyPlantAndEquipmentDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/GoodwillAndIntangibleAssets" xlink:title="00000013 - Disclosure - Goodwill and Intangible Assets">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/AccruedExpenses" xlink:title="00000014 - Disclosure - Accrued Expenses">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaapPayablesAndAccrualsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="loc_us-gaapAccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract" xlink:to="loc_us-gaapAccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Revenue" xlink:title="00000015 - Disclosure - Revenue">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaapRevenueFromContractWithCustomerAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaapRevenueFromContractWithCustomerTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapRevenueFromContractWithCustomerTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/EarningsPerShare" xlink:title="00000016 - Disclosure - Earnings per Share">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="loc_us-gaapEarningsPerShareTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapEarningsPerShareTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Stock-basedCompensation" xlink:title="00000017 - Disclosure - Stock-Based Compensation">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:label="loc_us-gaapDisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapDisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/IncomeTaxes" xlink:title="00000018 - Disclosure - Income Taxes">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaapIncomeTaxDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapIncomeTaxDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/CommitmentsAndContingencies" xlink:title="00000019 - Disclosure - Commitments and Contingencies">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="loc_us-gaapCommitmentsAndContingenciesDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapCommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ShareRepurchaseProgram" xlink:title="00000020 - Disclosure - Share Repurchase Program">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaapEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="loc_us-gaapStockholdersEquityNoteDisclosureTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_us-gaapStockholdersEquityNoteDisclosureTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SubsequentEvents" xlink:title="00000021 - Disclosure - Subsequent Events">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="loc_us-gaapSubsequentEventsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="loc_us-gaapSubsequentEventsTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsequentEventsAbstract" xlink:to="loc_us-gaapSubsequentEventsTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:title="00000022 - Disclosure - Summary of Significant Accounting Policies (Policies)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="loc_us-gaapCashAndCashEquivalentsPolicyTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapCashAndCashEquivalentsPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MarketableSecuritiesPolicy" xlink:label="loc_us-gaapMarketableSecuritiesPolicy" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapMarketableSecuritiesPolicy" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:label="loc_us-gaapTradeAndOtherAccountsReceivablePolicy" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapTradeAndOtherAccountsReceivablePolicy" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentsPolicy" xlink:label="loc_us-gaapEquityMethodInvestmentsPolicy" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapEquityMethodInvestmentsPolicy" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="loc_us-gaapInventoryPolicyTextBlock" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapInventoryPolicyTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsPolicyTextBlock" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapGoodwillAndIntangibleAssetsPolicyTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="loc_us-gaapImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationsPolicy" xlink:label="loc_us-gaapBusinessCombinationsPolicy" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapBusinessCombinationsPolicy" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="loc_us-gaapRevenueRecognitionPolicyTextBlock" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapRevenueRecognitionPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="loc_us-gaapRevenueFromContractWithCustomerPolicyTextBlock" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapRevenueFromContractWithCustomerPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="loc_us-gaapResearchAndDevelopmentExpensePolicy" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapResearchAndDevelopmentExpensePolicy" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="loc_us-gaapShareBasedCompensationOptionAndIncentivePlansPolicy" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="loc_us-gaapIncomeTaxPolicyTextBlock" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapIncomeTaxPolicyTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="loc_us-gaapEarningsPerSharePolicyTextBlock" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapEarningsPerSharePolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:label="loc_us-gaapComprehensiveIncomePolicyPolicyTextBlock" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapComprehensiveIncomePolicyPolicyTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskCreditRisk" xlink:label="loc_us-gaapConcentrationRiskCreditRisk" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapConcentrationRiskCreditRisk" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="loc_us-gaapNewAccountingPronouncementsPolicyPolicyTextBlock" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapNewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstrumentsTables" xlink:title="00000023 - Disclosure - Cash, Cash Equivalents, and Financial Instruments (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="loc_us-gaapCashAndCashEquivalentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock" xlink:label="loc_us-gaapScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCashAndCashEquivalentsAbstract" xlink:to="loc_us-gaapScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BusinessCombinationsTables" xlink:title="00000024 - Disclosure - Business Combinations (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="loc_us-gaapBusinessCombinationAndAssetAcquisitionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:label="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessCombinationAndAssetAcquisitionAbstract" xlink:to="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/FairValueMeasurementsTables" xlink:title="00000025 - Disclosure - Fair Value Measurements (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaapFairValueDisclosuresAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:label="loc_us-gaapFairValueAssetsMeasuredOnRecurringBasisTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueDisclosuresAbstract" xlink:to="loc_us-gaapFairValueAssetsMeasuredOnRecurringBasisTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:label="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueDisclosuresAbstract" xlink:to="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" xlink:label="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueDisclosuresAbstract" xlink:to="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/PropertyAndEquipmentTables" xlink:title="00000026 - Disclosure - Property and Equipment (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaapPropertyPlantAndEquipmentAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentAbstract" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/GoodwillAndIntangibleAssetsTables" xlink:title="00000027 - Disclosure - Goodwill and Intangible Assets (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="loc_us-gaapScheduleOfGoodwillTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfGoodwillTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaapScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/AccruedExpensesTables" xlink:title="00000028 - Disclosure - Accrued Expenses (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaapPayablesAndAccrualsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="loc_us-gaapScheduleOfAccruedLiabilitiesTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract" xlink:to="loc_us-gaapScheduleOfAccruedLiabilitiesTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/RevenueTables" xlink:title="00000029 - Disclosure - Revenue (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaapRevenueFromContractWithCustomerAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" xlink:label="loc_us-gaapScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="loc_us-gaapContractWithCustomerAssetAndLiabilityTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/EarningsPerShareTables" xlink:title="00000030 - Disclosure - Earnings per Share (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="loc_us-gaapScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Stock-basedCompensationTables" xlink:title="00000031 - Disclosure - Stock-Based Compensation (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="loc_us-gaapScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="loc_us-gaapScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock" xlink:label="loc_us-gaapScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock" xlink:label="loc_us-gaapScheduleOfShareBasedCompensationActivityTableTextBlock" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapScheduleOfShareBasedCompensationActivityTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/IncomeTaxesTables" xlink:title="00000032 - Disclosure - Income Taxes (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="loc_us-gaapScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="loc_us-gaapScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="loc_us-gaapScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:label="loc_us-gaapScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/CommitmentsAndContingenciesTables" xlink:title="00000033 - Disclosure - Commitments and Contingencies (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="loc_us-gaapLeaseCostTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapLeaseCostTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityMaturityTableTextBlock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ScheduleOfOperatingLeaseTableTextBlock" xlink:label="loc_CODXScheduleOfOperatingLeaseTableTextBlock" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_CODXScheduleOfOperatingLeaseTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ShareRepurchaseProgramTables" xlink:title="00000034 - Disclosure - Share Repurchase Program (Tables)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaapEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ScheduleOfTreasuryStockTableTextBlock" xlink:label="loc_CODXScheduleOfTreasuryStockTableTextBlock" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_CODXScheduleOfTreasuryStockTableTextBlock" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative" xlink:title="00000035 - Disclosure - Summary of Significant Accounting Policies (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfProductInformationTable" xlink:label="loc_us-gaapScheduleOfProductInformationTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract" xlink:to="loc_us-gaapScheduleOfProductInformationTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductInformationLineItems" xlink:label="loc_us-gaapProductInformationLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_us-gaapProductInformationLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis" xlink:label="loc_srtMajorCustomersAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_srtMajorCustomersAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srtNameOfMajorCustomerDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtMajorCustomersAxis" xlink:to="loc_srtNameOfMajorCustomerDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_CustomersMember" xlink:label="loc_CODXCustomersMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtNameOfMajorCustomerDomain" xlink:to="loc_CODXCustomersMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_OneCustomerMember" xlink:label="loc_CODXOneCustomerMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtNameOfMajorCustomerDomain" xlink:to="loc_CODXOneCustomerMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_TwoCustomersTogetherMember" xlink:label="loc_CODXTwoCustomersTogetherMember" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtNameOfMajorCustomerDomain" xlink:to="loc_CODXTwoCustomersTogetherMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_FourCustomersMember" xlink:label="loc_CODXFourCustomersMember" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtNameOfMajorCustomerDomain" xlink:to="loc_CODXFourCustomersMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_CustomersTogetherMember" xlink:label="loc_CODXCustomersTogetherMember" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtNameOfMajorCustomerDomain" xlink:to="loc_CODXCustomersTogetherMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaapConcentrationRiskByTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_us-gaapConcentrationRiskByTypeAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaapConcentrationRiskTypeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskByTypeAxis" xlink:to="loc_us-gaapConcentrationRiskTypeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaapCustomerConcentrationRiskMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskTypeDomain" xlink:to="loc_us-gaapCustomerConcentrationRiskMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaapConcentrationRiskByBenchmarkAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_us-gaapConcentrationRiskByBenchmarkAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaapConcentrationRiskBenchmarkDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:to="loc_us-gaapConcentrationRiskBenchmarkDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember" xlink:label="loc_us-gaapAccountsReceivableMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:to="loc_us-gaapAccountsReceivableMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaapSalesRevenueNetMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:to="loc_us-gaapSalesRevenueNetMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaapAdjustmentsForNewAccountingPronouncementsAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfProductInformationTable" xlink:to="loc_us-gaapAdjustmentsForNewAccountingPronouncementsAxis" order="40" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaapTypeOfAdoptionMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsForNewAccountingPronouncementsAxis" xlink:to="loc_us-gaapTypeOfAdoptionMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingStandardsUpdate201602Member" xlink:label="loc_us-gaapAccountingStandardsUpdate201602Member" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTypeOfAdoptionMember" xlink:to="loc_us-gaapAccountingStandardsUpdate201602Member" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableGrossCurrent" xlink:label="loc_us-gaapAccountsReceivableGrossCurrent" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapAccountsReceivableGrossCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaapAllowanceForDoubtfulAccountsReceivableCurrent" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapAllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaapAccountsReceivableNetCurrent" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapAccountsReceivableNetCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapInventoryNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoods" xlink:label="loc_us-gaapInventoryFinishedGoods" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapInventoryFinishedGoods" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterials" xlink:label="loc_us-gaapInventoryRawMaterials" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapInventoryRawMaterials" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetImpairmentCharges" xlink:label="loc_us-gaapAssetImpairmentCharges" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapAssetImpairmentCharges" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaapResearchAndDevelopmentExpense" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapResearchAndDevelopmentExpense" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaapConcentrationRiskPercentage1" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapConcentrationRiskPercentage1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaapOperatingLeaseLiability" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapOperatingLeaseLiability" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaapOperatingLeaseRightOfUseAsset" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapProductInformationLineItems" xlink:to="loc_us-gaapOperatingLeaseRightOfUseAsset" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails" xlink:title="00000036 - Disclosure - Schedule of Cash, Cash Equivalents, and Marketable Investment Securities (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="loc_us-gaapCashAndCashEquivalentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable" xlink:label="loc_us-gaapScheduleOfCashAndCashEquivalentsTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCashAndCashEquivalentsAbstract" xlink:to="loc_us-gaapScheduleOfCashAndCashEquivalentsTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsLineItems" xlink:label="loc_us-gaapCashAndCashEquivalentsLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfCashAndCashEquivalentsTable" xlink:to="loc_us-gaapCashAndCashEquivalentsLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="loc_us-gaapCashAndCashEquivalentsAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfCashAndCashEquivalentsTable" xlink:to="loc_us-gaapCashAndCashEquivalentsAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="loc_us-gaapRestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCashAndCashEquivalentsAxis" xlink:to="loc_us-gaapRestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashMember" xlink:label="loc_us-gaapCashMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="loc_us-gaapCashMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="loc_us-gaapMoneyMarketFundsMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="loc_us-gaapMoneyMarketFundsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_USTreasurySecuritiesMember" xlink:label="loc_us-gaapUSTreasurySecuritiesMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="loc_us-gaapUSTreasurySecuritiesMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaapFairValueByFairValueHierarchyLevelAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfCashAndCashEquivalentsTable" xlink:to="loc_us-gaapFairValueByFairValueHierarchyLevelAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueByFairValueHierarchyLevelAxis" xlink:to="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="loc_us-gaapFairValueInputsLevel1Member" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" xlink:to="loc_us-gaapFairValueInputsLevel1Member" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="loc_us-gaapFairValueInputsLevel2Member" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" xlink:to="loc_us-gaapFairValueInputsLevel2Member" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingSecuritiesDebtAmortizedCost" xlink:label="loc_us-gaapTradingSecuritiesDebtAmortizedCost" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCashAndCashEquivalentsLineItems" xlink:to="loc_us-gaapTradingSecuritiesDebtAmortizedCost" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinancingReceivableAllowanceForCreditLosses" xlink:label="loc_us-gaapFinancingReceivableAllowanceForCreditLosses" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCashAndCashEquivalentsLineItems" xlink:to="loc_us-gaapFinancingReceivableAllowanceForCreditLosses" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MarketableSecuritiesUnrealizedGainLoss" xlink:label="loc_us-gaapMarketableSecuritiesUnrealizedGainLoss" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCashAndCashEquivalentsLineItems" xlink:to="loc_us-gaapMarketableSecuritiesUnrealizedGainLoss" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingSecurities" xlink:label="loc_us-gaapTradingSecurities" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCashAndCashEquivalentsLineItems" xlink:to="loc_us-gaapTradingSecurities" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaapCashAndCashEquivalentsAtCarryingValue" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCashAndCashEquivalentsLineItems" xlink:to="loc_us-gaapCashAndCashEquivalentsAtCarryingValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MarketableSecurities" xlink:label="loc_us-gaapMarketableSecurities" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCashAndCashEquivalentsLineItems" xlink:to="loc_us-gaapMarketableSecurities" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails" xlink:title="00000037 - Disclosure - Schedule of Assets and Liabilities assumed (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="loc_us-gaapBusinessCombinationAndAssetAcquisitionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessCombinationAndAssetAcquisitionAbstract" xlink:to="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaapBusinessAcquisitionLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_us-gaapBusinessAcquisitionLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAxis" xlink:label="loc_srtRestatementAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_srtRestatementAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementDomain" xlink:label="loc_srtRestatementDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRestatementAxis" xlink:to="loc_srtRestatementDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioPreviouslyReportedMember" xlink:label="loc_srtScenarioPreviouslyReportedMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRestatementDomain" xlink:to="loc_srtScenarioPreviouslyReportedMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RestatementAdjustmentMember" xlink:label="loc_srtRestatementAdjustmentMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRestatementDomain" xlink:to="loc_srtRestatementAdjustmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaapBusinessAcquisitionAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_us-gaapBusinessAcquisitionAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaapBusinessAcquisitionAcquireeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionAxis" xlink:to="loc_us-gaapBusinessAcquisitionAcquireeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember" xlink:label="loc_CODXAdvancedConceptionsIncAndIdahoMolecularIncMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionAcquireeDomain" xlink:to="loc_CODXAdvancedConceptionsIncAndIdahoMolecularIncMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueAcquisitions" xlink:label="loc_us-gaapStockIssuedDuringPeriodValueAcquisitions" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodValueAcquisitions" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_PaymentsToShareHoldersValueAcquisitions" xlink:label="loc_CODXPaymentsToShareHoldersValueAcquisitions" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_CODXPaymentsToShareHoldersValueAcquisitions" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContingentConsiderationClassifiedAsEquityFairValueDisclosure" xlink:label="loc_us-gaapContingentConsiderationClassifiedAsEquityFairValueDisclosure" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapContingentConsiderationClassifiedAsEquityFairValueDisclosure" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantsNotSettleableInCashFairValueDisclosure" xlink:label="loc_us-gaapWarrantsNotSettleableInCashFairValueDisclosure" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapWarrantsNotSettleableInCashFairValueDisclosure" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaapBusinessCombinationConsiderationTransferred1" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationConsiderationTransferred1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements" xlink:label="loc_CODXBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_CODXBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapGoodwill" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative" xlink:title="00000038 - Disclosure - Business Combinations (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:label="loc_us-gaapBusinessCombinationAndAssetAcquisitionAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessCombinationAndAssetAcquisitionAbstract" xlink:to="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaapBusinessAcquisitionLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_us-gaapBusinessAcquisitionLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaapBusinessAcquisitionAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_us-gaapBusinessAcquisitionAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaapBusinessAcquisitionAcquireeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionAxis" xlink:to="loc_us-gaapBusinessAcquisitionAcquireeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember" xlink:label="loc_CODXAdvancedConceptionsIncAndIdahoMolecularIncMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionAcquireeDomain" xlink:to="loc_CODXAdvancedConceptionsIncAndIdahoMolecularIncMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="loc_srtEquityMethodInvesteeNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="loc_srtEquityMethodInvesteeNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ACIAndIDMOMember" xlink:label="loc_CODXACIAndIDMOMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtEquityMethodInvesteeNameDomain" xlink:to="loc_CODXACIAndIDMOMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="loc_srtRangeAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_StockIssuedDuringPeriodSharesExchanged" xlink:label="loc_CODXStockIssuedDuringPeriodSharesExchanged" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_CODXStockIssuedDuringPeriodSharesExchanged" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_StockIssuedDuringPeriodSharesContingentConsideration" xlink:label="loc_CODXStockIssuedDuringPeriodSharesContingentConsideration" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_CODXStockIssuedDuringPeriodSharesContingentConsideration" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" xlink:label="loc_us-gaapClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="loc_us-gaapEquityMethodInvestmentOwnershipPercentage" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapEquityMethodInvestmentOwnershipPercentage" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="loc_us-gaapBusinessCombinationConsiderationTransferred1" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationConsiderationTransferred1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillPeriodIncreaseDecrease" xlink:label="loc_us-gaapGoodwillPeriodIncreaseDecrease" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapGoodwillPeriodIncreaseDecrease" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_RemeasurementOfAcquisitionContingencies" xlink:label="loc_CODXRemeasurementOfAcquisitionContingencies" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_CODXRemeasurementOfAcquisitionContingencies" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsRemainingAmortizationPeriod1" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails" xlink:title="00000039 - Disclosure - Schedule of Fair Value Assets and Liabilities (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaapFairValueDisclosuresAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueDisclosuresAbstract" xlink:to="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="loc_us-gaapFairValueByMeasurementFrequencyAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="loc_us-gaapFairValueByMeasurementFrequencyAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaapFairValueMeasurementFrequencyDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueByMeasurementFrequencyAxis" xlink:to="loc_us-gaapFairValueMeasurementFrequencyDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="loc_us-gaapFairValueMeasurementsRecurringMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueMeasurementFrequencyDomain" xlink:to="loc_us-gaapFairValueMeasurementsRecurringMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaapFairValueByFairValueHierarchyLevelAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="loc_us-gaapFairValueByFairValueHierarchyLevelAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueByFairValueHierarchyLevelAxis" xlink:to="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="loc_us-gaapFairValueInputsLevel1Member" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" xlink:to="loc_us-gaapFairValueInputsLevel1Member" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="loc_us-gaapFairValueInputsLevel2Member" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" xlink:to="loc_us-gaapFairValueInputsLevel2Member" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="loc_us-gaapFairValueInputsLevel3Member" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueMeasurementsFairValueHierarchyDomain" xlink:to="loc_us-gaapFairValueInputsLevel3Member" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:label="loc_us-gaapCashAndCashEquivalentsFairValueDisclosure" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="loc_us-gaapCashAndCashEquivalentsFairValueDisclosure" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MarketableSecurities" xlink:label="loc_us-gaapMarketableSecurities" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="loc_us-gaapMarketableSecurities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="loc_us-gaapAssetsFairValueDisclosure" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="loc_us-gaapAssetsFairValueDisclosure" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_FairValueOfContingentConsiderationToCommonStock" xlink:label="loc_CODXFairValueOfContingentConsiderationToCommonStock" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="loc_CODXFairValueOfContingentConsiderationToCommonStock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_FairValueOfContingentConsiderationToWarrants" xlink:label="loc_CODXFairValueOfContingentConsiderationToWarrants" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="loc_CODXFairValueOfContingentConsiderationToWarrants" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesFairValueDisclosure" xlink:label="loc_us-gaapLiabilitiesFairValueDisclosure" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="loc_us-gaapLiabilitiesFairValueDisclosure" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfChangesInFairValueMeasurementDetails" xlink:title="00000040 - Disclosure - Schedule of Changes in Fair Value Measurement (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaapFairValueDisclosuresAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent" xlink:label="loc_us-gaapBusinessCombinationContingentConsiderationLiabilityNoncurrent" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueDisclosuresAbstract" xlink:to="loc_us-gaapBusinessCombinationContingentConsiderationLiabilityNoncurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ContingentConsideredIssuedForMeasurementPeriodAdjustments" xlink:label="loc_CODXContingentConsideredIssuedForMeasurementPeriodAdjustments" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueDisclosuresAbstract" xlink:to="loc_CODXContingentConsideredIssuedForMeasurementPeriodAdjustments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ContingentConsideredIssuedForBusinessAcquisitions" xlink:label="loc_CODXContingentConsideredIssuedForBusinessAcquisitions" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueDisclosuresAbstract" xlink:to="loc_CODXContingentConsideredIssuedForBusinessAcquisitions" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent" xlink:label="loc_us-gaapBusinessCombinationContingentConsiderationLiabilityNoncurrent_2" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueDisclosuresAbstract" xlink:to="loc_us-gaapBusinessCombinationContingentConsiderationLiabilityNoncurrent_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails" xlink:title="00000041 - Disclosure - Schedule of Contingent Consideration Common Stock and Warrants (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaapFairValueDisclosuresAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable" xlink:label="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueDisclosuresAbstract" xlink:to="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" xlink:label="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable" xlink:to="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeAxis" xlink:label="loc_us-gaapMeasurementInputTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable" xlink:to="loc_us-gaapMeasurementInputTypeAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputTypeDomain" xlink:label="loc_us-gaapMeasurementInputTypeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapMeasurementInputTypeAxis" xlink:to="loc_us-gaapMeasurementInputTypeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputSharePriceMember" xlink:label="loc_us-gaapMeasurementInputSharePriceMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_us-gaapMeasurementInputSharePriceMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputStrikePriceMember" xlink:label="loc_CODXMeasurementInputStrikePriceMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_CODXMeasurementInputStrikePriceMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputPriceVolatilityMember" xlink:label="loc_us-gaapMeasurementInputPriceVolatilityMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_us-gaapMeasurementInputPriceVolatilityMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputRiskFreeInterestRateMember" xlink:label="loc_us-gaapMeasurementInputRiskFreeInterestRateMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_us-gaapMeasurementInputRiskFreeInterestRateMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputExpectedTermMember" xlink:label="loc_us-gaapMeasurementInputExpectedTermMember" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_us-gaapMeasurementInputExpectedTermMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputCostOfCapitalMember" xlink:label="loc_CODXMeasurementInputCostOfCapitalMember" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_CODXMeasurementInputCostOfCapitalMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MeasurementInputDiscountRateMember" xlink:label="loc_us-gaapMeasurementInputDiscountRateMember" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_us-gaapMeasurementInputDiscountRateMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputEquityVolatilityMember" xlink:label="loc_CODXMeasurementInputEquityVolatilityMember" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_CODXMeasurementInputEquityVolatilityMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputAssetVolatilityMember" xlink:label="loc_CODXMeasurementInputAssetVolatilityMember" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_CODXMeasurementInputAssetVolatilityMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_MeasurementInputRevenueVolatilityMember" xlink:label="loc_CODXMeasurementInputRevenueVolatilityMember" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapMeasurementInputTypeDomain" xlink:to="loc_CODXMeasurementInputRevenueVolatilityMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantsAndRightsOutstandingMeasurementInput" xlink:label="loc_us-gaapWarrantsAndRightsOutstandingMeasurementInput" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" xlink:to="loc_us-gaapWarrantsAndRightsOutstandingMeasurementInput" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantsAndRightsOutstandingTerm" xlink:label="loc_us-gaapWarrantsAndRightsOutstandingTerm" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" xlink:to="loc_us-gaapWarrantsAndRightsOutstandingTerm" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityMeasurementInput" xlink:label="loc_us-gaapBusinessCombinationContingentConsiderationLiabilityMeasurementInput" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" xlink:to="loc_us-gaapBusinessCombinationContingentConsiderationLiabilityMeasurementInput" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm" xlink:label="loc_CODXBusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems" xlink:to="loc_CODXBusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails" xlink:title="00000042 - Disclosure - Schedule of Property and Equipment (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaapPropertyPlantAndEquipmentAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentAbstract" xlink:to="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaapPropertyPlantAndEquipmentLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquipmentMember" xlink:label="loc_us-gaapEquipmentMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapEquipmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdsAndLeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdsAndLeaseholdImprovementsMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLeaseholdsAndLeaseholdImprovementsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdImprovementsMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLeaseholdImprovementsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OfficeEquipmentMember" xlink:label="loc_us-gaapOfficeEquipmentMember" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapOfficeEquipmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="loc_srtRangeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfPropertyPlantAndEquipmentTable" xlink:to="loc_srtRangeAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="loc_srtRangeMember" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeAxis" xlink:to="loc_srtRangeMember" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember" xlink:label="loc_srtMinimumMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMinimumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="loc_srtMaximumMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRangeMember" xlink:to="loc_srtMaximumMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="loc_us-gaapPropertyPlantAndEquipmentUsefulLife" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentUsefulLife" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaapPropertyPlantAndEquipmentGross" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfGoodwillDetails" xlink:title="00000043 - Disclosure - Schedule of Goodwill (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapGoodwill" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillTranslationAndPurchaseAccountingAdjustments" xlink:label="loc_us-gaapGoodwillTranslationAndPurchaseAccountingAdjustments" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapGoodwillTranslationAndPurchaseAccountingAdjustments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="loc_us-gaapGoodwillImpairmentLoss" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapGoodwillImpairmentLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill_2" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapGoodwill_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails" xlink:title="00000044 - Disclosure - Schedule of Intangible Assets, Net (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InProcessResearchAndDevelopmentMember" xlink:label="loc_us-gaapInProcessResearchAndDevelopmentMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_us-gaapInProcessResearchAndDevelopmentMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="loc_us-gaapNoncompeteAgreementsMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_us-gaapNoncompeteAgreementsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_IndefiniteLivedIntangibleAssetUsefulLife" xlink:label="loc_CODXIndefiniteLivedIntangibleAssetUsefulLife" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_CODXIndefiniteLivedIntangibleAssetUsefulLife" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsGross" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsGross" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAccumulatedAmortization" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetUsefulLife" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetUsefulLife" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails" xlink:title="00000045 - Disclosure - Schedule of Future Amortization Expense (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsNet" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/GoodwillAndIntangibleAssetsDetailsNarrative" xlink:title="00000046 - Disclosure - Goodwill and Intangible Assets (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="loc_us-gaapGoodwill" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails" xlink:title="00000047 - Disclosure - Schedule of Accrued Expenses (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaapPayablesAndAccrualsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedPayrollTaxesCurrent" xlink:label="loc_us-gaapAccruedPayrollTaxesCurrent" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract" xlink:to="loc_us-gaapAccruedPayrollTaxesCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedSalesCommissionCurrent" xlink:label="loc_us-gaapAccruedSalesCommissionCurrent" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract" xlink:to="loc_us-gaapAccruedSalesCommissionCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaapOtherAccruedLiabilitiesCurrent" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract" xlink:to="loc_us-gaapOtherAccruedLiabilitiesCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaapAccruedLiabilitiesCurrent" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract" xlink:to="loc_us-gaapAccruedLiabilitiesCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails" xlink:title="00000048 - Disclosure - Summary of Revenue by Geographic Area (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaapRevenueFromContractWithCustomerAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaapDisaggregationOfRevenueTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapDisaggregationOfRevenueTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaapDisaggregationOfRevenueLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_us-gaapDisaggregationOfRevenueLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srtStatementGeographicalAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_srtStatementGeographicalAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US" xlink:label="loc_countryUS" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryUS" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_RestOfWorldMember" xlink:label="loc_CODXRestOfWorldMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_CODXRestOfWorldMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaapConcentrationRiskByBenchmarkAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_us-gaapConcentrationRiskByBenchmarkAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaapConcentrationRiskBenchmarkDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskByBenchmarkAxis" xlink:to="loc_us-gaapConcentrationRiskBenchmarkDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaapSalesRevenueNetMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskBenchmarkDomain" xlink:to="loc_us-gaapSalesRevenueNetMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaapConcentrationRiskByTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueTable" xlink:to="loc_us-gaapConcentrationRiskByTypeAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaapConcentrationRiskTypeDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskByTypeAxis" xlink:to="loc_us-gaapConcentrationRiskTypeDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="loc_us-gaapGeographicConcentrationRiskMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapConcentrationRiskTypeDomain" xlink:to="loc_us-gaapGeographicConcentrationRiskMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaapConcentrationRiskPercentage1" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisaggregationOfRevenueLineItems" xlink:to="loc_us-gaapConcentrationRiskPercentage1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfDeferredRevenueDetails" xlink:title="00000049 - Disclosure - Schedule of Deferred Revenue (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaapRevenueFromContractWithCustomerAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaapContractWithCustomerLiability" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapContractWithCustomerLiability" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="loc_us-gaapContractWithCustomerLiabilityRevenueRecognized" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapContractWithCustomerLiabilityRevenueRecognized" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_IncreaseDueToPrepaymentsFromCustomers" xlink:label="loc_CODXIncreaseDueToPrepaymentsFromCustomers" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_CODXIncreaseDueToPrepaymentsFromCustomers" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_IncreaseDueToNoteReceivable" xlink:label="loc_CODXIncreaseDueToNoteReceivable" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_CODXIncreaseDueToNoteReceivable" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances" xlink:label="loc_CODXDecreaseDueToRefundsToCustomersAndApplicationToOpenBalances" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_CODXDecreaseDueToRefundsToCustomersAndApplicationToOpenBalances" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaapContractWithCustomerLiability_2" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenueFromContractWithCustomerAbstract" xlink:to="loc_us-gaapContractWithCustomerLiability_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails" xlink:title="00000050 - Disclosure - Schedule of Basic and Diluted Earnings Per Share (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="loc_us-gaapWeightedAverageNumberDilutedSharesOutstandingAdjustment" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapWeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaapEarningsPerShareBasic" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapEarningsPerShareBasic" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaapEarningsPerShareDiluted" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapEarningsPerShareDiluted" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/EarningsPerShareDetailsNarrative" xlink:title="00000051 - Disclosure - Earnings per Share (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="loc_us-gaapScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract" xlink:to="loc_us-gaapScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaapStatementEquityComponentsAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaapCommonStockMember" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapCommonStockMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantMember" xlink:label="loc_us-gaapWarrantMember" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapWarrantMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="loc_us-gaapAntidilutiveSecuritiesNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="loc_us-gaapAntidilutiveSecuritiesNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaapRestrictedStockUnitsRSUMember" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAntidilutiveSecuritiesNameDomain" xlink:to="loc_us-gaapRestrictedStockUnitsRSUMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaapEmployeeStockOptionMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAntidilutiveSecuritiesNameDomain" xlink:to="loc_us-gaapEmployeeStockOptionMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfOptionActivityDetails" xlink:title="00000052 - Disclosure - Schedule of Option Activity (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised" xlink:label="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_2" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_2" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_2" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm" xlink:label="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable" xlink:label="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails" xlink:title="00000053 - Disclosure - Schedule of Outstanding Restricted Stock Units and Related Activity (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaapAwardTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapAwardTypeAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaapRestrictedStockUnitsRSUMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaapRestrictedStockUnitsRSUMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails" xlink:title="00000054 - Disclosure - Schedule of Warrant Activity (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_CODXShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue" xlink:label="loc_CODXShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice" xlink:label="loc_CODXShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue" xlink:label="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="loc_CODXShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue" xlink:label="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:label="loc_CODXShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:label="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_CODXShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_CODXShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3" xlink:label="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration" xlink:label="loc_CODXShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice" xlink:label="loc_CODXIssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXIssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue" xlink:label="loc_CODXIssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXIssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_2" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice" xlink:label="loc_CODXShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue" xlink:label="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_CODXSharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails" xlink:title="00000055 - Disclosure - Schedule of Recognized Stock-based Compensation Expense (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaapAwardTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapAwardTypeAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaapEmployeeStockOptionMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaapEmployeeStockOptionMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaapRestrictedStockUnitsRSUMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaapRestrictedStockUnitsRSUMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockCompensationPlanMember" xlink:label="loc_us-gaapStockCompensationPlanMember" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaapStockCompensationPlanMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaapAllocatedShareBasedCompensationExpense" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapAllocatedShareBasedCompensationExpense" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative" xlink:title="00000056 - Disclosure - Stock-Based Compensation (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="100" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="200" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaapPlanNameAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapPlanNameAxis" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPlanNameAxis" xlink:to="loc_us-gaapPlanNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_TwoThousandFifteenLongTermIncentivePlanMember" xlink:label="loc_CODXTwoThousandFifteenLongTermIncentivePlanMember" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPlanNameDomain" xlink:to="loc_CODXTwoThousandFifteenLongTermIncentivePlanMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaapAwardTypeAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapAwardTypeAxis" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardTypeAxis" xlink:to="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_StockOptionsMember" xlink:label="loc_CODXStockOptionsMember" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_CODXStockOptionsMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaapRestrictedStockUnitsRSUMember" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaapRestrictedStockUnitsRSUMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember" xlink:label="loc_us-gaapRestrictedStockMember" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaapRestrictedStockMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaapStatementEquityComponentsAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantMember" xlink:label="loc_us-gaapWarrantMember" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapWarrantMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis" xlink:label="loc_srtTitleOfIndividualAxis" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="loc_srtTitleOfIndividualAxis" order="40" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" />
      <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtTitleOfIndividualAxis" xlink:to="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" order="0" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ThirdPartiesMember" xlink:label="loc_CODXThirdPartiesMember" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtTitleOfIndividualWithRelationshipToEntityDomain" xlink:to="loc_CODXThirdPartiesMember" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapEmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_CODXShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_CODXShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_ClassOfWarrantExercisable" xlink:label="loc_CODXClassOfWarrantExercisable" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_CODXClassOfWarrantExercisable" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightOutstanding" xlink:label="loc_us-gaapClassOfWarrantOrRightOutstanding" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapClassOfWarrantOrRightOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesIssuedForServices" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesIssuedForServices" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesIssuedForServices" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails" xlink:title="00000057 - Disclosure - Schedule of Components Income Tax Provision (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:label="loc_us-gaapCurrentFederalStateAndLocalTaxExpenseBenefitAbstract" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapCurrentFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentFederalTaxExpenseBenefit" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCurrentFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:to="loc_us-gaapCurrentFederalTaxExpenseBenefit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentStateAndLocalTaxExpenseBenefit" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCurrentFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:to="loc_us-gaapCurrentStateAndLocalTaxExpenseBenefit" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaapCurrentFederalStateAndLocalTaxExpenseBenefit" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCurrentFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:to="loc_us-gaapCurrentFederalStateAndLocalTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:label="loc_us-gaapDeferredFederalStateAndLocalTaxExpenseBenefitAbstract" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapDeferredFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredFederalIncomeTaxExpenseBenefit" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:to="loc_us-gaapDeferredFederalIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredStateAndLocalIncomeTaxExpenseBenefit" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:to="loc_us-gaapDeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaapDeferredFederalStateAndLocalTaxExpenseBenefit" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:to="loc_us-gaapDeferredFederalStateAndLocalTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails" xlink:title="00000058 - Disclosure - Schedule of Benefit from Income Taxes and Effective Tax Rates (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaapEffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapEffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="loc_us-gaapEffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapEffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract" xlink:label="loc_us-gaapEffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapEffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction" xlink:label="loc_CODXEffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract" xlink:to="loc_CODXEffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:label="loc_us-gaapEffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract" xlink:to="loc_us-gaapEffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement" xlink:label="loc_CODXEffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract" xlink:to="loc_CODXEffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_EffectiveIncomeTaxRateReconciliationGoodwillImpairment" xlink:label="loc_CODXEffectiveIncomeTaxRateReconciliationGoodwillImpairment" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract" xlink:to="loc_CODXEffectiveIncomeTaxRateReconciliationGoodwillImpairment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:label="loc_us-gaapEffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract" xlink:to="loc_us-gaapEffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment" xlink:label="loc_us-gaapEffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapEffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance" xlink:label="loc_CODXEffectiveIncomeTaxRateReconciliationChangeInValuationAllowance" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_CODXEffectiveIncomeTaxRateReconciliationChangeInValuationAllowance" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaapEffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapEffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:label="loc_us-gaapEffectiveIncomeTaxRateReconciliationOtherAdjustments" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapEffectiveIncomeTaxRateReconciliationOtherAdjustments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" xlink:label="loc_us-gaapEffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapEffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails" xlink:title="00000059 - Disclosure - Schedule of Deferred Tax Assets (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGrossAbstract" xlink:label="loc_us-gaapDeferredTaxAssetsGrossAbstract" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapDeferredTaxAssetsGrossAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:label="loc_us-gaapDeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxAssetsGrossAbstract" xlink:to="loc_us-gaapDeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:label="loc_us-gaapDeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxAssetsGrossAbstract" xlink:to="loc_us-gaapDeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits" xlink:label="loc_us-gaapDeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxAssetsGrossAbstract" xlink:to="loc_us-gaapDeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:label="loc_us-gaapDeferredTaxAssetsInProcessResearchAndDevelopment" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxAssetsGrossAbstract" xlink:to="loc_us-gaapDeferredTaxAssetsInProcessResearchAndDevelopment" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_DeferredTaxAssetsLeaseLiability" xlink:label="loc_CODXDeferredTaxAssetsLeaseLiability" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxAssetsGrossAbstract" xlink:to="loc_CODXDeferredTaxAssetsLeaseLiability" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_DeferredTaxAssetsUniformCapitalization" xlink:label="loc_CODXDeferredTaxAssetsUniformCapitalization" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxAssetsGrossAbstract" xlink:to="loc_CODXDeferredTaxAssetsUniformCapitalization" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="loc_us-gaapDeferredTaxAssetsGross" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxAssetsGrossAbstract" xlink:to="loc_us-gaapDeferredTaxAssetsGross" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesAbstract" xlink:label="loc_us-gaapDeferredTaxLiabilitiesAbstract" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapDeferredTaxLiabilitiesAbstract" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="loc_us-gaapDeferredTaxLiabilitiesPropertyPlantAndEquipment" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxLiabilitiesAbstract" xlink:to="loc_us-gaapDeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="loc_us-gaapDeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxLiabilitiesAbstract" xlink:to="loc_us-gaapDeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesPrepaidExpenses" xlink:label="loc_us-gaapDeferredTaxLiabilitiesPrepaidExpenses" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxLiabilitiesAbstract" xlink:to="loc_us-gaapDeferredTaxLiabilitiesPrepaidExpenses" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_DeferredTaxLiabilitiesRightOfUseAsset" xlink:label="loc_CODXDeferredTaxLiabilitiesRightOfUseAsset" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxLiabilitiesAbstract" xlink:to="loc_CODXDeferredTaxLiabilitiesRightOfUseAsset" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOtherComprehensiveIncome" xlink:label="loc_us-gaapDeferredTaxLiabilitiesOtherComprehensiveIncome" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxLiabilitiesAbstract" xlink:to="loc_us-gaapDeferredTaxLiabilitiesOtherComprehensiveIncome" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxLiabilitiesOther" xlink:label="loc_us-gaapDeferredTaxLiabilitiesOther" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxLiabilitiesAbstract" xlink:to="loc_us-gaapDeferredTaxLiabilitiesOther" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="loc_us-gaapDeferredIncomeTaxLiabilities" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxLiabilitiesAbstract" xlink:to="loc_us-gaapDeferredIncomeTaxLiabilities" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_NetDeferredTaxLiabilities" xlink:label="loc_CODXNetDeferredTaxLiabilities" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDeferredTaxLiabilitiesAbstract" xlink:to="loc_CODXNetDeferredTaxLiabilities" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaapDeferredTaxAssetsValuationAllowance" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapDeferredTaxAssetsValuationAllowance" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="loc_us-gaapDeferredTaxAssetsLiabilitiesNet" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapDeferredTaxAssetsLiabilitiesNet" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfUnrecognizedTaxBenefitsDetails" xlink:title="00000060 - Disclosure - Schedule of Unrecognized Tax Benefits (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="loc_us-gaapUnrecognizedTaxBenefits" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapUnrecognizedTaxBenefits" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:label="loc_us-gaapUnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapUnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:label="loc_us-gaapUnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapUnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:label="loc_us-gaapUnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapUnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="loc_us-gaapUnrecognizedTaxBenefits_2" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapUnrecognizedTaxBenefits_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued" xlink:label="loc_us-gaapUnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapUnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/IncomeTaxesDetailsNarrative" xlink:title="00000061 - Disclosure - Income Taxes (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="loc_us-gaapOperatingLossCarryforwards" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapOperatingLossCarryforwards" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment" xlink:label="loc_us-gaapDeferredTaxAssetsInProcessResearchAndDevelopment" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapDeferredTaxAssetsInProcessResearchAndDevelopment" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" xlink:label="loc_us-gaapDeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapDeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwards" xlink:label="loc_us-gaapDeferredTaxAssetsTaxCreditCarryforwards" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapDeferredTaxAssetsTaxCreditCarryforwards" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:label="loc_us-gaapUnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract" xlink:to="loc_us-gaapUnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails" xlink:title="00000062 - Disclosure - Schedule of Lease Expense (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost" xlink:label="loc_us-gaapOperatingLeaseCost" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapOperatingLeaseCost" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermLeaseCost" xlink:label="loc_us-gaapShortTermLeaseCost" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapShortTermLeaseCost" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost" xlink:label="loc_us-gaapLeaseCost" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapLeaseCost" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails" xlink:title="00000063 - Disclosure - Schedule of Maturities on Company Lease Liabilities (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFive" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaapOperatingLeaseLiability" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapOperatingLeaseLiability" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityCurrent" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapOperatingLeaseLiabilityCurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityNoncurrent" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapOperatingLeaseLiabilityNoncurrent" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfOtherInformationRelatedToOperatingLeaseDetails" xlink:title="00000064 - Disclosure - Schedule of Other Information Related to Operating Lease (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments" xlink:label="loc_us-gaapOperatingLeasePayments" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapOperatingLeasePayments" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="loc_us-gaapOperatingLeaseWeightedAverageRemainingLeaseTerm1" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapOperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="loc_us-gaapOperatingLeaseWeightedAverageDiscountRatePercent" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract" xlink:to="loc_us-gaapOperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="arc" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ScheduleOfTreasuryStockDetails" xlink:title="00000065 - Disclosure - Schedule of Treasury Stock (Details)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaapEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockShares" xlink:label="loc_us-gaapTreasuryStockShares" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_us-gaapTreasuryStockShares" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
      <link:loc xlink:type="locator" xlink:href="codx-20221231.xsd#CODX_RepurchasesOfCommonStock" xlink:label="loc_CODXRepurchasesOfCommonStock" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_CODXRepurchasesOfCommonStock" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TreasuryStockShares" xlink:label="loc_us-gaapTreasuryStockShares_2" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_us-gaapTreasuryStockShares_2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    </link:presentationLink>
    <link:presentationLink xlink:type="extended" xlink:role="http://codiagnostics.com/role/ShareRepurchaseProgramDetailsNarrative" xlink:title="00000066 - Disclosure - Share Repurchase Program (Details Narrative)">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaapEquityAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:label="loc_us-gaapStockRepurchaseProgramAuthorizedAmount1" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityAbstract" xlink:to="loc_us-gaapStockRepurchaseProgramAuthorizedAmount1" xlink:type="arc" />
    </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367632672976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Mar. 14, 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_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-K<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_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<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_dei_DocumentAnnualReport', window );">Document Annual Report</a></td>
<td class="text">true<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_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<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_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Dec. 31,  2022<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_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">FY<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_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2022<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_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<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_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-38148<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_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">CO-DIAGNOSTICS,
INC.<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_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0001692415<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_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">46-2609396<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_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">UT<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_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">2401
S. Foothill Drive<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_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Salt Lake City<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_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">UT<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_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">84109<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_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">(801)<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_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">438-1036<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_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock<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_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">CODX<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_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<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_dei_EntityWellKnownSeasonedIssuer', window );">Entity Well-known Seasoned Issuer</a></td>
<td class="text">No<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_dei_EntityVoluntaryFilers', window );">Entity Voluntary Filers</a></td>
<td class="text">No<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_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<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_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<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_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Non-accelerated Filer<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_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<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_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<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_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<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_dei_EntityPublicFloat', window );">Entity Public Float</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 187,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">30,922,607<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_IcfrAuditorAttestationFlag', window );">ICFR Auditor Attestation Flag</a></td>
<td class="text">false<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_dei_AuditorFirmId', window );">Auditor Firm ID</a></td>
<td class="text">457<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_dei_AuditorName', window );">Auditor Name</a></td>
<td class="text">Haynie & Company<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_dei_AuditorLocation', window );">Auditor Location</a></td>
<td class="text">Salt
Lake City, Utah<span></span>
</td>
<td class="text">&#160;<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_AuditorFirmId">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>PCAOB issued Audit Firm Identifier</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-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AuditorFirmId</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:nonemptySequenceNumberItemType</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_AuditorLocation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AuditorLocation</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:internationalNameItemType</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_AuditorName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AuditorName</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:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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_DocumentAnnualReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 annual 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-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_DocumentAnnualReport</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_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_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_EntityPublicFloat">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.</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_EntityPublicFloat</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: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_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_EntityVoluntaryFilers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.</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_EntityVoluntaryFilers</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_EntityWellKnownSeasonedIssuer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br> -Section 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_EntityWellKnownSeasonedIssuer</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_IcfrAuditorAttestationFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_IcfrAuditorAttestationFlag</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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367628523232">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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">$ 22,973,803<span></span>
</td>
<td class="nump">$ 88,607,234<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_MarketableSecuritiesCurrent', window );">Marketable investment securities</a></td>
<td class="nump">58,289,066<span></span>
</td>
<td class="nump">1,255,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_AccountsReceivableNetCurrent', window );">Accounts receivable, net</a></td>
<td class="nump">3,453,723<span></span>
</td>
<td class="nump">20,839,182<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 );">Inventory</a></td>
<td class="nump">5,310,473<span></span>
</td>
<td class="nump">2,004,169<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_IncomeTaxReceivable', window );">Income taxes receivable</a></td>
<td class="nump">1,870,419<span></span>
</td>
<td class="text"> <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_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">761,186<span></span>
</td>
<td class="nump">2,338,444<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_NotesAndLoansReceivableNetCurrent', window );">Note receivable</a></td>
<td class="nump">75,000<span></span>
</td>
<td class="nump">75,000<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">92,733,670<span></span>
</td>
<td class="nump">115,119,295<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 );">Property and equipment, net</a></td>
<td class="nump">2,539,483<span></span>
</td>
<td class="nump">1,933,216<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_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use asset</a></td>
<td class="nump">372,115<span></span>
</td>
<td class="text"> <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_Goodwill', window );">Goodwill</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">14,706,818<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_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="nump">26,768,333<span></span>
</td>
<td class="nump">27,195,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_RealEstateInvestmentsJointVentures', window );">Investment in joint venture</a></td>
<td class="nump">672,679<span></span>
</td>
<td class="nump">1,004,953<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_NotesAndLoansReceivableNetNoncurrent', window );">Note receivable</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">75,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_Assets', window );">Total assets</a></td>
<td class="nump">123,086,280<span></span>
</td>
<td class="nump">160,034,282<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">952,297<span></span>
</td>
<td class="nump">607,506<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_AccruedLiabilitiesCurrent', window );">Accrued expenses, current</a></td>
<td class="nump">934,447<span></span>
</td>
<td class="nump">3,859,652<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_OperatingLeaseLiabilityCurrent', window );">Operating lease liability, current</a></td>
<td class="nump">297,209<span></span>
</td>
<td class="text"> <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_AssetAcquisitionContingentConsiderationLiabilityCurrent', window );">Contingent consideration liabilities, current</a></td>
<td class="nump">1,689,471<span></span>
</td>
<td class="nump">5,767,304<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_TaxesPayableCurrent', window );">Income taxes payable</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">2,213,088<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_ContractWithCustomerLiabilityCurrent', window );">Deferred revenue</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">150,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_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">3,873,424<span></span>
</td>
<td class="nump">12,597,550<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_LiabilitiesNoncurrentAbstract', window );"><strong>Long-term 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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_CODX_TaxesPayableNoncurrent', window );">Income taxes payable</a></td>
<td class="nump">1,181,284<span></span>
</td>
<td class="nump">1,067,853<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 tax liability</a></td>
<td class="nump">2,417,987<span></span>
</td>
<td class="nump">7,228,444<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_OperatingLeaseLiabilityNoncurrent', window );">Operating lease liability</a></td>
<td class="nump">50,708<span></span>
</td>
<td class="text"> <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_AssetAcquisitionContingentConsiderationLiabilityNoncurrent', window );">Contingent consideration liabilities</a></td>
<td class="nump">1,042,885<span></span>
</td>
<td class="nump">4,665,337<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_LiabilitiesNoncurrent', window );">Total long-term liabilities</a></td>
<td class="nump">4,692,864<span></span>
</td>
<td class="nump">12,961,634<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">8,566,288<span></span>
</td>
<td class="nump">25,559,184<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Stockholders&#8217; equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Convertible preferred stock, $0.001 par value; 5,000,000 shares authorized; 0 shares issued and outstanding as of December 31, 2022 and December 31, 2021, respectively</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_CommonStockValue', window );">Common stock, $0.001 par value; 100,000,000 shares authorized; 34,754,265 shares issued and 30,872,607 shares outstanding as of December 31, 2022 and 33,819,862 shares issued and outstanding as of December 31, 2021</a></td>
<td class="nump">34,754<span></span>
</td>
<td class="nump">33,820<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValue', window );">Treasury stock, at cost; 3,881,658 and 0 shares held as of December 31, 2022 and December 31, 2021, respectively</a></td>
<td class="num">(14,211,866)<span></span>
</td>
<td class="text"> <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">88,472,934<span></span>
</td>
<td class="nump">80,271,999<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_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive income</a></td>
<td class="nump">293,140<span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Accumulated earnings</a></td>
<td class="nump">39,931,030<span></span>
</td>
<td class="nump">54,169,279<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 stockholders&#8217; equity</a></td>
<td class="nump">114,519,992<span></span>
</td>
<td class="nump">134,475,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_LiabilitiesAndStockholdersEquity', window );">Total liabilities and stockholders&#8217; equity</a></td>
<td class="nump">$ 123,086,280<span></span>
</td>
<td class="nump">$ 160,034,282<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_TaxesPayableNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Taxes payable non current.</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;">CODX_TaxesPayableNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<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> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<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> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669686-108580<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e681-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AssetAcquisitionContingentConsiderationLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 liability recognized from contingent consideration in asset acquisition, 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 50<br> -Section 15<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=6911878&amp;loc=d3e8732-128492<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetAcquisitionContingentConsiderationLiabilityCurrent</td>
</tr>
<tr>
<td style="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_AssetAcquisitionContingentConsiderationLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 liability recognized from contingent consideration in asset acquisition, classified as noncurrent.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 50<br> -Section 15<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=6911878&amp;loc=d3e8732-128492<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetAcquisitionContingentConsiderationLiabilityNoncurrent</td>
</tr>
<tr>
<td style="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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3044-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="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_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 obligation to transfer good or service to customer for which consideration has been received or is 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130531-203044<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130532-203044<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31931-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31917-109318<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="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_IncomeTaxReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount as of the balance sheet date of income taxes previously overpaid to tax authorities (such as U.S. Federal, state and local tax authorities) representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes. Also called income tax refund receivable.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(a)(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(10))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReceivable</td>
</tr>
<tr>
<td style="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_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<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> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6904-107765<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<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> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 obligation due after one year or beyond 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 201.5-02(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 201.5-02(26))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 201.5-02(24))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 15: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="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_LiabilitiesNoncurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LiabilitiesNoncurrentAbstract</td>
</tr>
<tr>
<td style="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_MarketableSecuritiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 investment in marketable security, classified as current.</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_MarketableSecuritiesCurrent</td>
</tr>
<tr>
<td style="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_NotesAndLoansReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amortized cost, after allowance for credit loss, of financing receivable classified as current. Excludes net investment in lease.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(7))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NotesAndLoansReceivableNetCurrent</td>
</tr>
<tr>
<td style="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_NotesAndLoansReceivableNetNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 financing receivable, classified as noncurrent.</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_NotesAndLoansReceivableNetNoncurrent</td>
</tr>
<tr>
<td style="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_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="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_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="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_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 lessee's right to use underlying asset under operating lease.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PrepaidExpenseAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RealEstateInvestmentsJointVentures">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 book value of investments in real estate joint ventures including direct and indirect investments.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03.1(d))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RealEstateInvestmentsJointVentures</td>
</tr>
<tr>
<td style="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>The cumulative amount of the reporting entity's undistributed earnings or deficit.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI https://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_TaxesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 for statutory income, sales, use, payroll, excise, real, property and other taxes. 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19,20)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxesPayableCurrent</td>
</tr>
<tr>
<td style="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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=6405834&amp;loc=d3e23315-112656<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<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> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>15
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367628486544">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets (Parenthetical) - $ / shares<br></strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Convertible preferred stock, par value</a></td>
<td class="nump">$ 0.001<span></span>
</td>
<td class="nump">$ 0.001<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Convertible preferred stock , shares authorized</a></td>
<td class="nump">5,000,000<span></span>
</td>
<td class="nump">5,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_PreferredStockSharesIssued', window );">Convertible preferred stock, shares issued</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_PreferredStockSharesOutstanding', window );">Convertible 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 value</a></td>
<td class="nump">$ 0.001<span></span>
</td>
<td class="nump">$ 0.001<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">100,000,000<span></span>
</td>
<td class="nump">100,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">34,754,265<span></span>
</td>
<td class="nump">33,819,862<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">30,872,607<span></span>
</td>
<td class="nump">33,819,862<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_TreasuryStockShares', window );">Treasury stock, shares</a></td>
<td class="nump">3,881,658<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PreferredStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesIssued</td>
</tr>
<tr>
<td style="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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 common and preferred shares that were previously issued and that were repurchased by the issuing entity and held in treasury on the financial statement date. This stock has no voting rights and receives no dividends.</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> -Publisher FASB<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> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockShares</td>
</tr>
<tr>
<td style="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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367628599248">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Operations and Comprehensive Income (Loss) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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>Income Statement [Abstract]</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 34,218,209<span></span>
</td>
<td class="nump">$ 97,885,603<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 revenue</a></td>
<td class="nump">5,481,092<span></span>
</td>
<td class="nump">11,574,944<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">28,737,117<span></span>
</td>
<td class="nump">86,310,659<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_OperatingExpensesAbstract', window );"><strong>Operating expenses</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_SellingAndMarketingExpense', window );">Sales and marketing</a></td>
<td class="nump">7,344,628<span></span>
</td>
<td class="nump">13,397,813<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_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">14,262,963<span></span>
</td>
<td class="nump">11,550,615<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_ResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="nump">17,438,098<span></span>
</td>
<td class="nump">14,961,916<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_DepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">1,282,718<span></span>
</td>
<td class="nump">335,363<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_GoodwillImpairmentLoss', window );">Goodwill impairment charges</a></td>
<td class="nump">15,388,546<span></span>
</td>
<td class="text"> <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_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="nump">55,716,953<span></span>
</td>
<td class="nump">40,245,707<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 );">Income (loss) from operations</a></td>
<td class="num">(26,979,836)<span></span>
</td>
<td class="nump">46,064,952<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_NonoperatingIncomeExpenseAbstract', window );"><strong>Other income (expense)</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_InterestIncomeOther', window );">Interest income</a></td>
<td class="nump">704,044<span></span>
</td>
<td class="nump">45,631<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_GainLossOnDispositionOfAssets1', window );">Loss on disposition of assets</a></td>
<td class="num">(138,117)<span></span>
</td>
<td class="num">(44,355)<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_CODX_GainOnRemeasurementOfAcquisitionContingencies', window );">Gain on remeasurement of acquisition contingencies</a></td>
<td class="nump">7,899,644<span></span>
</td>
<td class="text"> <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_GainLossOnSaleOfInvestments', window );">Loss on equity method investment in joint venture</a></td>
<td class="num">(332,969)<span></span>
</td>
<td class="num">(430,433)<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_NonoperatingIncomeExpense', window );">Total other income (expense)</a></td>
<td class="nump">8,132,602<span></span>
</td>
<td class="num">(429,157)<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income (loss) before income taxes</a></td>
<td class="num">(18,847,234)<span></span>
</td>
<td class="nump">45,635,795<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax provision (benefit)</a></td>
<td class="num">(4,608,985)<span></span>
</td>
<td class="nump">8,977,231<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_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="num">(14,238,249)<span></span>
</td>
<td class="nump">36,658,564<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract', window );"><strong>Other comprehensive income</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_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax', window );">Change in net unrealized gains on marketable securities, net of tax</a></td>
<td class="nump">293,140<span></span>
</td>
<td class="text"> <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_OtherComprehensiveIncomeLossBeforeTax', window );">Total other comprehensive income</a></td>
<td class="nump">293,140<span></span>
</td>
<td class="text"> <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_ComprehensiveIncomeNetOfTax', window );">Comprehensive income (loss)</a></td>
<td class="num">$ (13,945,109)<span></span>
</td>
<td class="nump">$ 36,658,564<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_EarningsPerShareBasicAbstract', window );"><strong>Earnings per common share:</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_EarningsPerShareBasic', window );">Basic</a></td>
<td class="num">$ (0.45)<span></span>
</td>
<td class="nump">$ 1.27<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_EarningsPerShareDiluted', window );">Diluted</a></td>
<td class="num">$ (0.45)<span></span>
</td>
<td class="nump">$ 1.23<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_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract', window );"><strong>Weighted average shares outstanding:</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_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic</a></td>
<td class="nump">31,479,028<span></span>
</td>
<td class="nump">28,874,555<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">31,479,028<span></span>
</td>
<td class="nump">29,903,686<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_GainOnRemeasurementOfAcquisitionContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gain on remeasurement of acquisition contingencies.</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;">CODX_GainOnRemeasurementOfAcquisitionContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e557-108580<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationAndAmortization</td>
</tr>
<tr>
<td style="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_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) for the period 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e4984-109258<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e3842-109258<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="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_EarningsPerShareBasicAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EarningsPerShareBasicAbstract</td>
</tr>
<tr>
<td style="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_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) for 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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e3842-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="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_GainLossOnDispositionOfAssets1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnDispositionOfAssets1</td>
</tr>
<tr>
<td style="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_GainLossOnSaleOfInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 realized gain (loss) on investments sold during the period, not including gains (losses) on securities separately or otherwise categorized as trading, available-for-sale, or held-to-maturity, which, for cash flow reporting, is a component of proceeds from investing 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfInvestments</td>
</tr>
<tr>
<td style="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_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="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_GoodwillImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13777-109266<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillImpairmentLoss</td>
</tr>
<tr>
<td style="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_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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 18: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126941158&amp;loc=d3e41242-110953<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InterestIncomeOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 interest income earned from interest bearing assets classified as 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;">us-gaap_InterestIncomeOther</td>
</tr>
<tr>
<td style="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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of income or expense from ancillary business-related activities (that is to say, 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>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="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_NonoperatingIncomeExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NonoperatingIncomeExpenseAbstract</td>
</tr>
<tr>
<td style="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_OperatingExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OperatingExpensesAbstract</td>
</tr>
<tr>
<td style="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_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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherComprehensiveIncomeLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax, after reclassification adjustments of other comprehensive income (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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109237563&amp;loc=d3e33775-111570<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442407-227067<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossBeforeTax</td>
</tr>
<tr>
<td style="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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract</td>
</tr>
<tr>
<td style="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_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax and before adjustment, of unrealized holding gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Excludes unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-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/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669646-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax</td>
</tr>
<tr>
<td style="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_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 730<br> -Section 25<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6472174&amp;loc=d3e58812-109433<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 730<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_us-gaap_SellingAndMarketingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of expenses directly related to the marketing or selling of products or services.</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_SellingAndMarketingExpense</td>
</tr>
<tr>
<td style="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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract</td>
</tr>
<tr>
<td style="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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367626131008">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Statement of Changes in Stockholders' Equity - USD ($)<br></strong></div></th>
<th class="th">
<div>Convertible Preferred Stock [Member] </div>
<div>Preferred Stock [Member]</div>
</th>
<th class="th"><div>Common Stock [Member]</div></th>
<th class="th"><div>Treasury Stock [Member]</div></th>
<th class="th"><div>Additional Paid-in Capital [Member]</div></th>
<th class="th"><div>AOCI Attributable to Parent [Member]</div></th>
<th class="th"><div>Retained Earnings [Member]</div></th>
<th class="th"><div>Total</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 );">Balance at Dec. 31, 2020</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 28,558<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 49,157,236<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 17,510,715<span></span>
</td>
<td class="nump">$ 66,696,509<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_SharesOutstanding', window );">Balance, shares at Dec. 31, 2020</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">28,558,033<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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Common stock issued for option exercises</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 189<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">450,209<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 450,398<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_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Common stock issued for option exercises, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">189,225<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">189,225<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_StockIssuedDuringPeriodValueShareBasedCompensationGross', window );">Stock-based compensation expense</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 444<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">5,508,960<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 5,509,404<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_StockIssuedDuringPeriodSharesShareBasedCompensationGross', window );">Stock-based compensation expense, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">444,050<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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueAcquisitions', window );">Common stock issued for acquisitions</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 4,629<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25,155,594<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">25,160,223<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_StockIssuedDuringPeriodSharesAcquisitions', window );">Common stock issued for acquisitions, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,628,554<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="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</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">36,658,564<span></span>
</td>
<td class="nump">36,658,564<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 );">Balance at Dec. 31, 2021</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 33,820<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">80,271,999<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">54,169,279<span></span>
</td>
<td class="nump">134,475,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_SharesOutstanding', window );">Balance, shares at Dec. 31, 2021</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">33,819,862<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_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Common stock issued for option exercises</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 70<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">77,800<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 77,870<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_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Common stock issued for option exercises, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">70,791<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">70,791<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_StockIssuedDuringPeriodValueShareBasedCompensationGross', window );">Stock-based compensation expense</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 725<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">7,542,498<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 7,543,223<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_StockIssuedDuringPeriodSharesShareBasedCompensationGross', window );">Stock-based compensation expense, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">725,166<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_StockIssuedDuringPeriodValueAcquisitions', window );">Common stock issued for acquisitions</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 89<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">480,687<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">480,776<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_StockIssuedDuringPeriodSharesAcquisitions', window );">Common stock issued for acquisitions, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">88,446<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_NetIncomeLoss', window );">Net income</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(14,238,249)<span></span>
</td>
<td class="num">(14,238,249)<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_StockIssuedDuringPeriodValueOther', window );">Common stock issued for warrant exercises</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 50<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">99,950<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">100,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_StockIssuedDuringPeriodSharesOther', window );">Common stock issued for warrant exercises, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50,000<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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Repurchases of common stock</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(14,211,866)<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="num">(14,211,866)<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_OtherComprehensiveIncomeLossNetOfTax', window );">Other comprehensive income, net of tax</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">293,140<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">293,140<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 );">Balance at Dec. 31, 2022</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 34,754<span></span>
</td>
<td class="num">$ (14,211,866)<span></span>
</td>
<td class="nump">$ 88,472,934<span></span>
</td>
<td class="nump">$ 293,140<span></span>
</td>
<td class="nump">$ 39,931,030<span></span>
</td>
<td class="nump">$ 114,519,992<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_SharesOutstanding', window );">Balance, shares at Dec. 31, 2022</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">34,754,265<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>
</table>
<div style="display: none;">
<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax and reclassification adjustments of other comprehensive income (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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442407-227067<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=124507222&amp;loc=d3e1436-108581<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="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_SharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 issued which are neither cancelled nor held in the treasury.</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_SharesOutstanding</td>
</tr>
<tr>
<td style="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_StockIssuedDuringPeriodSharesAcquisitions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 stock issued during the period pursuant to acquisitions.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesAcquisitions</td>
</tr>
<tr>
<td style="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_StockIssuedDuringPeriodSharesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 stock issued attributable to transactions classified as 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;">us-gaap_StockIssuedDuringPeriodSharesOther</td>
</tr>
<tr>
<td style="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_StockIssuedDuringPeriodSharesShareBasedCompensationGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</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_StockIssuedDuringPeriodSharesShareBasedCompensationGross</td>
</tr>
<tr>
<td style="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_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 share options (or share units) exercised during the current 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="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_StockIssuedDuringPeriodValueAcquisitions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 stock issued pursuant to acquisitions during the period.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueAcquisitions</td>
</tr>
<tr>
<td style="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_StockIssuedDuringPeriodValueOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 shares of stock issued attributable to transactions classified as 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;">us-gaap_StockIssuedDuringPeriodValueOther</td>
</tr>
<tr>
<td style="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_StockIssuedDuringPeriodValueShareBasedCompensationGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</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_StockIssuedDuringPeriodValueShareBasedCompensationGross</td>
</tr>
<tr>
<td style="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_StockIssuedDuringPeriodValueStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 stock issued as a result of the exercise of stock options.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised</td>
</tr>
<tr>
<td style="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_StockRepurchasedDuringPeriodValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchasedDuringPeriodValue</td>
</tr>
<tr>
<td style="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_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>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI https://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367632695728">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Cash Flows - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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</a></td>
<td class="num">$ (14,238,249)<span></span>
</td>
<td class="nump">$ 36,658,564<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 to 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_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">1,282,718<span></span>
</td>
<td class="nump">335,363<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_GoodwillImpairmentLoss', window );">Goodwill impairment charges</a></td>
<td class="nump">15,388,546<span></span>
</td>
<td class="text"> <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_ShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="nump">7,543,223<span></span>
</td>
<td class="nump">5,509,404<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_CODX_GainOnRemeasurementOfAcquisitionContingencies', window );">Change in fair value of acquisition contingencies</a></td>
<td class="num">(7,899,644)<span></span>
</td>
<td class="text"> <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_CODX_NoncashLeaseExpense', window );">Non-cash lease expense</a></td>
<td class="nump">30,430<span></span>
</td>
<td class="text"> <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_GainLossOnSaleOfInvestments', window );">Loss from equity method investment</a></td>
<td class="nump">332,969<span></span>
</td>
<td class="nump">430,433<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_GainLossOnDispositionOfAssets1', window );">Loss on disposition of assets</a></td>
<td class="nump">138,117<span></span>
</td>
<td class="nump">44,355<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_DeferredIncomeTaxExpenseBenefit', window );">Deferred income taxes</a></td>
<td class="num">(4,810,457)<span></span>
</td>
<td class="nump">930,081<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_ProvisionForDoubtfulAccounts', window );">Bad debt expense</a></td>
<td class="nump">2,428,930<span></span>
</td>
<td class="nump">69,672<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 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="nump">14,956,529<span></span>
</td>
<td class="num">(8,740,851)<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_IncreaseDecreaseInPrepaidExpense', window );">Prepaid expenses</a></td>
<td class="num">(224,094)<span></span>
</td>
<td class="num">(2,049,095)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventory</a></td>
<td class="num">(3,525,210)<span></span>
</td>
<td class="nump">5,705,361<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_IncreaseDecreaseInContractWithCustomerLiability', window );">Deferred revenue</a></td>
<td class="num">(150,000)<span></span>
</td>
<td class="num">(155,307)<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_IncreaseDecreaseInAccruedIncomeTaxesPayable', window );">Income taxes payable</a></td>
<td class="num">(2,201,250)<span></span>
</td>
<td class="nump">2,643,381<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_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities', window );">Accounts payable, accrued expenses and other liabilities</a></td>
<td class="num">(2,483,821)<span></span>
</td>
<td class="num">(299,937)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by operating activities</a></td>
<td class="nump">6,568,737<span></span>
</td>
<td class="nump">41,081,424<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows from investing activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchases of property and equipment</a></td>
<td class="num">(1,427,512)<span></span>
</td>
<td class="num">(669,463)<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_ProceedsFromSaleAndMaturityOfMarketableSecurities', window );">Proceeds from maturities of marketable investment securities</a></td>
<td class="nump">11,255,266<span></span>
</td>
<td class="nump">3,080,180<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_PaymentsToAcquireMarketableSecurities', window );">Purchases of marketable securities</a></td>
<td class="num">(67,995,926)<span></span>
</td>
<td class="text"> <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_ProceedsFromDivestitureOfInterestInJointVenture', window );">Investment in joint venture</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">491,739<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_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Business combinations, net of cash acquired</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">1,196,243<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_NetCashProvidedByUsedInInvestingActivities', window );">Net cash (used in) provided by investing activities</a></td>
<td class="num">(58,168,172)<span></span>
</td>
<td class="nump">4,098,699<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_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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfCommonStock', window );">Proceeds from exercise of options and warrants</a></td>
<td class="nump">177,870<span></span>
</td>
<td class="nump">450,398<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_PaymentsForRepurchaseOfCommonStock', window );">Repurchases of common stock</a></td>
<td class="num">(14,211,866)<span></span>
</td>
<td class="text"> <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) provided by financing activities</a></td>
<td class="num">(14,033,996)<span></span>
</td>
<td class="nump">450,398<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net increase in cash and cash equivalents</a></td>
<td class="num">(65,633,431)<span></span>
</td>
<td class="nump">45,630,521<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash and cash equivalents at beginning of period</a></td>
<td class="nump">88,607,234<span></span>
</td>
<td class="nump">42,976,713<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash and cash equivalents at end of period</a></td>
<td class="nump">22,973,803<span></span>
</td>
<td class="nump">88,607,234<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_SupplementalCashFlowInformationAbstract', window );"><strong>Supplemental disclosure of cash flow information</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_InterestPaidNet', window );">Interest paid</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_IncomeTaxesPaidNet', window );">Income taxes paid</a></td>
<td class="nump">4,498,742<span></span>
</td>
<td class="nump">5,403,769<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_NoncashInvestingAndFinancingItemsAbstract', window );"><strong>Supplemental disclosure of non-cash investing and financing transactions</strong></a></td>
<td class="text">&#160;<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_CODX_NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment', window );">Inventory moved to property, plant and equipment</a></td>
<td class="nump">218,906<span></span>
</td>
<td class="nump">285,659<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_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability', window );">Right-of-use assets obtained in exchange for new operating lease liabilities</a></td>
<td class="nump">681,327<span></span>
</td>
<td class="text"> <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_CODX_BusinessAcquisitionMeasurementPeriodAdjustments', window );">Business acquisition measurement period adjustments</a></td>
<td class="nump">1,593<span></span>
</td>
<td class="text"> <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_CODX_StockIssuedDuringPeriodValueAcquisitionsAdjustments', window );">Fair value of common stock issued as consideration for business acquisitions</a></td>
<td class="nump">480,776<span></span>
</td>
<td class="nump">25,160,223<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_CODX_FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions', window );">Fair value of contingent common stock issued as consideration for business acquisitions</a></td>
<td class="nump">$ 199,359<span></span>
</td>
<td class="nump">$ 10,432,641<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_BusinessAcquisitionMeasurementPeriodAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business acquisition measurement period adjustments.</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;">CODX_BusinessAcquisitionMeasurementPeriodAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of contingent common stock and warrants issued as consideration for business acquisitions.</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;">CODX_FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_GainOnRemeasurementOfAcquisitionContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gain on remeasurement of acquisition contingencies.</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;">CODX_GainOnRemeasurementOfAcquisitionContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_NoncashLeaseExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Noncash lease expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">CODX_NoncashLeaseExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Noncash or part noncash inventory moved to property plant and equipment..</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;">CODX_NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_StockIssuedDuringPeriodValueAcquisitionsAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Stock issued during period value acquisitions adjustments.</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;">CODX_StockIssuedDuringPeriodValueAcquisitionsAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, disposal group and discontinued operations. 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=SL98516268-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3044-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations</td>
</tr>
<tr>
<td style="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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123444420&amp;loc=d3e33268-110906<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="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_GainLossOnDispositionOfAssets1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnDispositionOfAssets1</td>
</tr>
<tr>
<td style="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_GainLossOnSaleOfInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 realized gain (loss) on investments sold during the period, not including gains (losses) on securities separately or otherwise categorized as trading, available-for-sale, or held-to-maturity, which, for cash flow reporting, is a component of proceeds from investing 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfInvestments</td>
</tr>
<tr>
<td style="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_GoodwillImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13777-109266<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillImpairmentLoss</td>
</tr>
<tr>
<td style="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_IncomeTaxesPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4297-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxesPaidNet</td>
</tr>
<tr>
<td style="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_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities</td>
</tr>
<tr>
<td style="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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncreaseDecreaseInAccruedIncomeTaxesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable</td>
</tr>
<tr>
<td style="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_IncreaseDecreaseInContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 obligation to transfer good or service to customer for which consideration has been received or is receivable.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 310<br> -Section 45<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126938201&amp;loc=d3e55415-109406<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInContractWithCustomerLiability</td>
</tr>
<tr>
<td style="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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncreaseDecreaseInPrepaidExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 outstanding money paid in advance for goods or services that bring economic benefits for future periods.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInPrepaidExpense</td>
</tr>
<tr>
<td style="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_InterestPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4297-108586<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3367-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3536-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestPaidNet</td>
</tr>
<tr>
<td style="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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3536-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NoncashInvestingAndFinancingItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NoncashInvestingAndFinancingItemsAbstract</td>
</tr>
<tr>
<td style="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_PaymentsForRepurchaseOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 to reacquire common stock during the period.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForRepurchaseOfCommonStock</td>
</tr>
<tr>
<td style="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_PaymentsToAcquireBusinessesNetOfCashAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 a business, net of the cash acquired from the purchase.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired</td>
</tr>
<tr>
<td style="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_PaymentsToAcquireMarketableSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 for purchase of marketable security.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=124260329&amp;loc=d3e26853-111562<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireMarketableSecurities</td>
</tr>
<tr>
<td style="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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromDivestitureOfInterestInJointVenture">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 an investment interest in a joint venture that the reporting entity has not previously accounted for using consolidation or the equity method of accounting.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromDivestitureOfInterestInJointVenture</td>
</tr>
<tr>
<td style="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_ProceedsFromIssuanceOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 additional capital contribution to the 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfCommonStock</td>
</tr>
<tr>
<td style="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_ProceedsFromSaleAndMaturityOfMarketableSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 aggregate amount received by the entity through sale or maturity of marketable securities (held-to-maturity or available-for-sale) during the period.</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_ProceedsFromSaleAndMaturityOfMarketableSecurities</td>
</tr>
<tr>
<td style="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_ProvisionForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 expense (reversal of expense) for expected credit loss on accounts receivable.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProvisionForDoubtfulAccounts</td>
</tr>
<tr>
<td style="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_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 in right-of-use asset obtained in exchange for operating lease liability.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability</td>
</tr>
<tr>
<td style="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_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 noncash expense for share-based payment arrangement.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="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_SupplementalCashFlowInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="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>19
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367630029968">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Overview and Basis of Presentation<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock', window );">Overview and Basis of Presentation</a></td>
<td class="text"><p id="xdx_80F_eus-gaap--BusinessDescriptionAndBasisOfPresentationTextBlock_zjnQPQuzYgnf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
1 &#8211; <span id="xdx_826_zJKQTUZMuaY7">Overview and Basis of Presentation</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Description
of Business</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.35pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Co-Diagnostics,
Inc., a Utah corporation (the &#8220;Company&#8221; or &#8220;CODX&#8221;), is developing robust and innovative molecular tools for detection
of infectious diseases, liquid biopsy for cancer screening, and agricultural applications. The Company develops, manufactures, and sells
reagents used for diagnostic tests that function via the detection and/or analysis of nucleic acid molecules (DNA or RNA), including
robust and innovative molecular tools for detection of infectious diseases, liquid biopsy for cancer screening, and agricultural applications.
In connection with the sale of our tests we may sell diagnostic equipment from other manufacturers as self-contained lab systems.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Use
of Estimates</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
preparation of financial statements in conformity with generally accepted accounting principles requires management to make estimates
and assumptions that affect the amounts reported in the financial statements and the accompanying notes. Such estimates include receivables
and other long-lived assets, legal and regulatory contingencies, income taxes, share based arrangements, and others. These estimates
and assumptions are based on management&#8217;s best estimates and judgments. Actual amounts and results could differ from those estimates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Basis
of Presentation</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
accompanying audited consolidated financial statements of Co-Diagnostics, Inc. and its wholly owned subsidiaries have been prepared to
reflect the financial position, results of operations and cash flows of the Company and have been prepared in accordance with accounting
principles generally accepted in the United States of America (&#8220;GAAP&#8221;). All intercompany balances and transactions have been
eliminated.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="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_BusinessDescriptionAndBasisOfPresentationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the business description and basis of presentation concepts. Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity. Basis of presentation describes the underlying basis 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>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI https://asc.fasb.org/topic&amp;trid=2122369<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -URI https://asc.fasb.org/topic&amp;trid=2122149<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -URI https://asc.fasb.org/topic&amp;trid=2134479<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367634689680">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">Summary of Significant Accounting Policies</a></td>
<td class="text"><p id="xdx_80F_eus-gaap--SignificantAccountingPoliciesTextBlock_zbAqft1lx4z4" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
2 &#8211; <span id="xdx_823_zalKVf3mq66a">Summary of Significant Accounting Policies</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p id="xdx_843_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_zlP51pzp1Fm8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_z7t6FF0tCHfa">Cash
and Cash Equivalents</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cash
and cash equivalents consist of cash on hand, money market funds and highly liquid investments with an original maturity date of 90 days
or less from the date of purchase. The fair value of cash equivalents approximated their carrying value as of December 31, 2022 and December
31, 2021. <span style="background-color: white">The Company has its cash and cash equivalents with a large creditworthy financial institution
and the balance exceeded federally insured limits. The Company has not experienced any losses in such accounts, and management believes
the Company is not exposed to any significant credit risk on cash and cash equivalents.</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p id="xdx_84A_eus-gaap--MarketableSecuritiesPolicy_zukDsTCDUWU" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_867_zAnAwzlnRVI1">Marketable
Investment Securities</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s marketable investment securities are comprised of investments in certificates of deposit and U.S. Treasury bills and
notes. The Company designates investments in debt securities as available-for-sale. Available-for-sale debt securities with original
maturities of three months or less from the date of purchase are classified within cash and cash equivalents. Available-for-sale debt
securities with original maturities longer than three months are available to fund current operations and are classified as marketable
investment securities, within current assets on the consolidated balance sheets. The Company may sell these securities at any time for
use in its current operations or for other purposes, even prior to maturity. Available-for-sale debt securities are reported at fair
value with the related unrealized gains and losses included in accumulated other comprehensive income (loss), a component of stockholders&#8217;
equity, net of tax. Realized gains and losses on the sale of marketable securities are determined using the average cost method on a
first-in, first-out basis and recorded in total other income (expense), net in the condensed consolidated statements of operations and
comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
available-for-sale debt securities are subject to a periodic impairment review. For investments in an unrealized loss position, the Company
writes down the amortized cost basis of the investment if it is more likely than not that the Company will be required or will intend
to sell the investment before recovery of its amortized cost basis. For investments not likely to be sold before recovery of the amortized
cost basis, the Company determines whether a credit loss exists by considering information about the collectability of the instrument,
current market conditions, and reasonable and supportable forecasts of economic conditions. The Company recognizes an allowance for credit
losses up to the amount of the unrealized loss when appropriate. Allowances for credit losses and write-downs are recognized in total
other income (expense), net, and unrealized losses not related to credit losses are recognized in accumulated other comprehensive income
(loss). There are no allowances for credit losses recorded for the periods presented.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_845_eus-gaap--TradeAndOtherAccountsReceivablePolicy_zLXd2b4tq6wk" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_863_zLioYMsEtqb2">Accounts
Receivable</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Trade
accounts receivable are recorded at the invoiced amount (net of allowance) and do not bear interest. The Company maintains an allowance
for doubtful accounts for amounts the Company does not expect to collect. In establishing the required allowance, management considers
historical losses, current market condition, customers&#8217; financial condition, the age of receivables, and current payment patterns.
Account balances are written off against the allowance once the receivable is deemed uncollectible. Recoveries of trade receivables previously
written off are recorded when collected. At December 31, 2022 total accounts receivable was $<span id="xdx_90F_eus-gaap--AccountsReceivableGrossCurrent_iI_c20221231_zDlFiuwp9ZOi" title="Accounts receivable">6,552,249</span> with an allowance for uncollectable
accounts of $<span id="xdx_906_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iI_c20221231_zy6Vob70v6e3" title="Doubtful accounts">3,098,526</span> resulting in a net amount of $<span id="xdx_902_eus-gaap--AccountsReceivableNetCurrent_iI_c20221231_zMblppMPrhvh" title="Accounts receivable, net">3,453,723</span>. At December 31, 2021 total accounts receivable was $<span id="xdx_90F_eus-gaap--AccountsReceivableGrossCurrent_iI_c20211231_znnRFuR6YZY5" title="Accounts receivable, before allowance for credit loss, current">21,508,779</span> with an
allowance for uncollectable accounts of $<span id="xdx_90D_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iI_c20211231_zSFCPnJq6X0e" title="Uncollectable accounts">669,597</span> resulting in a net amount of $<span id="xdx_902_eus-gaap--AccountsReceivableNetCurrent_iI_c20211231_zvbwNuncuNT5" title="Accounts receivable, after allowance for credit loss, current">20,839,182</span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_848_eus-gaap--EquityMethodInvestmentsPolicy_z779mF7Byma9" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_869_zjHgYxmsz3w1">Equity-Method
Investments</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
equity method investments are initially recorded at cost and are included in other long-term assets in the accompanying consolidated
balance sheet. We adjust the carrying value of our investment based on our share of the earnings or losses in the periods which they
are reported by the investee until the carrying amount is zero. The earnings or losses are included in other income (expense) in the
accompanying consolidated statements of operations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_846_eus-gaap--InventoryPolicyTextBlock_z3Sx5h6BggQ2" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_zcrLW38mY8hd">Inventory</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inventory
is stated at the lower of cost or net-realizable value. Inventory cost is determined on a first-in first-out basis that approximates
average cost in accordance with ASC 330-10-30-12. At December 31, 2022, the Company had $<span id="xdx_90F_eus-gaap--InventoryNet_iI_c20221231_zWb5YMqnf5Kk" title="Inventory">5,310,473</span> in inventory, of which $<span id="xdx_90C_eus-gaap--InventoryFinishedGoods_iI_c20221231_zLhdzP0FuwUg" title="Inventory finished goods">1,327,264</span>
was finished goods and $<span id="xdx_901_eus-gaap--InventoryRawMaterials_iI_c20221231_ztNkX8lqiEel" title="Inventory raw materials">3,983,209</span> was raw materials. At December 31, 2021, the Company had $<span id="xdx_90D_eus-gaap--InventoryNet_iI_c20211231_z9PYMkZ2kXx9" title="Inventory, net">2,004,169</span> in inventory, of which $<span id="xdx_90A_eus-gaap--InventoryFinishedGoods_iI_c20211231_z5oFktUyrPL3" title="Inventory, finished goods, gross">983,088</span>
was finished goods and $<span id="xdx_90E_eus-gaap--InventoryRawMaterials_iI_c20211231_zZxgiGdF1P33" title="Inventory, raw materials, gross">1,021,081</span> was raw materials. The Company establishes reserves to reduce low-moving, obsolete, or unusable inventories
to their estimated useful or scrap values.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p id="xdx_845_eus-gaap--GoodwillAndIntangibleAssetsPolicyTextBlock_zGZ0PwmD2oC6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86C_z9WHLvmIr5Bi">Goodwill
and Intangible Assets</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill
represents the excess of the purchase price and related costs over the value assigned to net tangible and identifiable intangible assets
acquired in business combinations. Goodwill and indefinite-lived intangible assets are not amortized, but rather tested for impairment
at least annually on December 31, or more often if and when circumstances indicate that the carrying value may not be recoverable. Finite-lived
intangible assets are amortized over their useful lives.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2022, the Company recognized impairment charges related to goodwill of $<span id="xdx_908_eus-gaap--AssetImpairmentCharges_c20220101__20221231_zQytDLdiVcnd" title="Impairment charges">15,388,546</span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p id="xdx_849_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zCOmrbs4riQa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86F_zQ0J8hnPMV7l">Long-lived
Assets</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Long-lived
assets, such as property and equipment, are stated at cost less accumulated depreciation and amortization. Depreciation is provided using
the straight-line method over the estimated useful lives of the property, generally from three to five years. Repairs and maintenance
costs are expensed as incurred except when such repairs significantly add to the useful life or productive capacity of the asset, in
which case the repairs are capitalized.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company reviews its long-lived assets, including property and equipment, finite-lived intangible assets, and ROU assets, for impairment
whenever an event or change in facts and circumstances indicates that their carrying amounts may not be recoverable. Recoverability of
these assets is measured by comparing the carrying amount to the estimated undiscounted future cash flows expected to be generated. If
the carrying amount exceeds the undiscounted cash flows, the assets are determined to be impaired and an impairment charge is recognized
as the amount by which the carrying amount exceeds fair value.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_841_eus-gaap--BusinessCombinationsPolicy_z2bYQtSSsvcc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86C_zZYdX3HXTcCf">Business
Combinations</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
estimate the fair value of assets acquired and liabilities assumed in a business combination. Goodwill as of the acquisition date is
measured as the excess of consideration transferred over the net of the acquisition date fair values of the assets acquired and the liabilities
assumed. Such valuations require management to make significant estimates and assumptions, especially with respect to intangible assets.
Management&#8217;s estimates of fair value are based upon assumptions believed to be reasonable, but which are inherently uncertain and
unpredictable, and as a result, actual results may differ from estimates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_84E_eus-gaap--RevenueRecognitionPolicyTextBlock_zspZfJUhpuTi" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86B_zM0OA0duB2Y9">Revenue
Recognition</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company generates revenue from product sales and license sales. The Company recognizes revenue when all of the following criteria are
satisfied: (i) identification of the promised goods or services in the contract; (ii) determination of whether the promised goods or
services are performance obligations, including whether they are distinct in the context of the contract; (iii) measurement of the transaction
price, including the constraint on variable consideration; (iv) allocation of the transaction price to the performance obligations; and
(v) recognition of revenue when, or as the Company satisfies each performance obligation. Based on the criteria above, the Company typically
recognizes revenue upon delivery.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company constrains revenue by giving consideration to factors that could otherwise lead to a probable reversal of revenue. The Company
records any payments received from customers prior to the Company fulfilling its performance obligation(s) as deferred revenue.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_84C_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zhtvVfpavpZj" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_zSBwbIjua8Vd">Deferred
Revenue</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Deferred
revenue primarily consists of payments received from customers prior to the Company fulfilling its performance obligation of providing
the product. When this occurs, the Company records a contract liability as deferred revenue. Deferred revenue is recognized as revenue
as the related performance obligations are satisfied.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




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

<p id="xdx_84B_eus-gaap--ResearchAndDevelopmentExpensePolicy_zLp826ztHoOf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_zmNKFsgX7tG">Research
and Development</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Research
and development costs are expensed when incurred. The Company expensed $<span id="xdx_907_eus-gaap--ResearchAndDevelopmentExpense_c20220101__20221231_z5KwSywb3uU6" title="Research and development costs">17,438,098</span> and $<span id="xdx_901_eus-gaap--ResearchAndDevelopmentExpense_c20210101__20211231_zLzPeoUeLZ03" title="Research and development costs">14,961,916</span> of research and development costs
for the years ended December 31, 2022 and 2021, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_846_eus-gaap--ShareBasedCompensationOptionAndIncentivePlansPolicy_z7m0AvYS3jQb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86E_z8TVatW2ovHh">Stock-based
Compensation</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has granted stock-based awards, including restricted stock, stock options, stock warrants and restricted stock units (&#8220;RSUs&#8221;),
to its employees, certain consultants and members of its board of directors. The Company records stock-based compensation based on the
grant date fair value of the awards and recognizes the fair value of those awards as expense using the straight-line method over the
requisite service period of the award. The Company estimates the grant date fair value of stock options using the Black-Scholes option-pricing
model. <span style="background-color: white">When an award is forfeited prior to the vesting date, the Company recognizes an adjustment
for the previously recognized expense in the period of the forfeiture.</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_84A_eus-gaap--IncomeTaxPolicyTextBlock_zGX4cFrWPc92" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_867_zHBjpEbijS5f">Income
Taxes</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The
Company accounts for income taxes in accordance with the liability method of accounting for income taxes. Under this method, d</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">eferred
income tax assets and deferred income tax liabilities represent the tax effect of temporary differences between financial reporting and
tax reporting measured at enacted tax rates in effect for the year in which the differences are expected to reverse. The Company recognizes
only the impact of tax positions that, based on their technical merits, are more likely than not to be sustained upon an audit by the
taxing authority.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Valuation
allowances are provided when it is more-likely-than-not that some or all of the deferred income tax assets may not be realized. In assessing
the need for a valuation allowance, the Company has considered its historical levels of income, expectations of future taxable income
and ongoing tax planning strategies.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Developing
the provision for income taxes, including the effective tax rate and analysis of potential tax exposure items, if any, requires
significant judgment and expertise in federal and state income tax laws, regulations and strategies, including the determination of
deferred income tax assets and liabilities and any estimated valuation allowances deemed necessary to value deferred income tax
assets. Judgments and tax strategies are subject to audit by various taxing authorities. The Company has uncertain income tax
positions in the consolidated financial statements, and adverse determinations by these taxing authorities could have a material
adverse effect on the consolidated financial positions, result of operations, or cash flows.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_848_eus-gaap--EarningsPerSharePolicyTextBlock_zgWJMFuQGg6e" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86F_zrRS800yxWXc">Net
Income per Share</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Basic
net income or loss per common share is computed by dividing net income or loss applicable to common shareholders by the weighted average
number of shares outstanding during each period.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Diluted
net income or loss per share is computed by dividing net income or loss attributable to common stockholders by the weighted-average number
of shares of common stock outstanding during the period increased by common shares that could be issued upon conversion or exercise of
other outstanding securities to the extent those additional common shares would be dilutive. The dilutive effect of potentially dilutive
securities is reflected in diluted net income or loss per share by application of the treasury stock method. During periods when the
Company is in a net loss position, basic net loss per share is the same as diluted net loss per share as the effects of potentially dilutive
securities are anti-dilutive.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_84B_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zF4isgvWnRa5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_zGYzV1hnQeW8">Comprehensive
Income</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">Comprehensive
income is comprised of unrealized gains and losses on marketable securities, net of income taxes.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_848_eus-gaap--ConcentrationRiskCreditRisk_zBLAQRjUUgI9" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86F_zvToWzpxpSEc">Concentrations
Risk and Significant Customers</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The
Company had certain customers which are each responsible for generating <span id="xdx_904_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--CustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zkUQi3pu6Tv3" title="Concentration risk percentage"><span id="xdx_909_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--CustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zX6u0Rm6gmJh" title="Concentration risk percentage">10</span></span>% or more of the total revenue for the years ended December
31, 2022 and 2021. One customer accounted for approximately <span id="xdx_90F_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--OneCustomerMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zUjMqCAI0uY2" title="Concentration risk percentage"><span id="xdx_907_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--OneCustomerMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zQ7C3WjRK7t1" title="Concentration risk percentage">37</span></span>% and two customers together accounted for approximately <span id="xdx_90F_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--TwoCustomersTogetherMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zSiBVLz4t8q5" title="Total revenue, percentage"><span id="xdx_906_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--TwoCustomersTogetherMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zq9Skfg7W0Eb" title="Total revenue, percentage">48</span></span>% of total revenue
for the years ended December 31, 2022 and 2021, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">Three
customers accounted for more than <span id="xdx_902_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--FourCustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zzNino7otFNi" title="Concentration risk percentage">10</span>% of accounts receivable, and two customers each accounted for more than <span id="xdx_907_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--FourCustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zNDIuMuno5c2" title="Concentration risk percentage">10</span>% of accounts receivable,
at December 31, 2022 and 2021, respectively. These customers together accounted for approximately <span id="xdx_904_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--CustomersTogetherMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zn9o5cgE2otl" title="Concentration risk percentage">61</span>% and <span id="xdx_908_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--CustomersTogetherMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zLDBKw7sEXA4" title="Concentration risk percentage">66</span>% of accounts receivable
at December 31, 2022 and 2021, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_847_eus-gaap--NewAccountingPronouncementsPolicyPolicyTextBlock_z5TCl01oFX" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_866_zsYzaD3vX8b4">Recently
Issued Accounting Standards</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">From
time to time, new accounting pronouncements are issued by the Financial Accounting Standards Board (&#8220;FASB&#8221;) that are adopted
by the Company as of the specified effective date. If not discussed, management believes that the impact of recently issued standards,
which are not yet effective, will not have a material impact on the Company&#8217;s financial statements upon adoption.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
June 2016, the FASB issued ASU No. 2016-13, Financial Instruments-Credit Losses (Topic 326) (&#8220;ASU 2016-13&#8221;), which requires
the measurement and recognition of expected credit losses for certain financial instruments, which includes the Company&#8217;s accounts
receivable. ASU 2016-13 replaces the existing incurred loss impairment model with an expected loss methodology, which will result in
more timely recognition of credit losses. The Company adopted ASU 2016-13 on January 1, 2022. The adoption did not have an impact on
the Company&#8217;s financial statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
February 2016, the FASB issued ASU No. 2016-02, Leases (Topic 842) (&#8220;ASU 2016-02&#8221;), which requires a lessee to recognize
most leases on the balance sheet as lease liabilities with corresponding right-of-use assets. The objective of ASU 2016-02 is to increase
transparency and comparability among organizations by recognizing lease assets and lease liabilities on the balance sheet and disclosing
key information about leasing arrangements. The recognized lease liabilities and lease assets represent the obligation to make payments
and the right to use or control the use of a specified asset for the lease term, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
January 1, 2022, the Company adopted Topic 842 using the modified retrospective approach with the effective date as the date of
initial application. Consequently, results for the year ended December 31, 2022 are presented under Topic
842. No prior period amounts were adjusted and continue to be reported in accordance with previous lease guidance, ASC Topic 840,
Leases. The Company elected the practical expedients available under the provisions of the new standard, including not reassessing
whether expired or existing contracts are or contain leases; not reassessing the classification of expired or existing leases; and
not reassessing the initial direct cost for any existing leases. Upon adoption, the Company recognized an operating lease liability
of $<span id="xdx_908_eus-gaap--OperatingLeaseLiability_iI_c20220102__us-gaap--AdjustmentsForNewAccountingPronouncementsAxis__us-gaap--AccountingStandardsUpdate201602Member_zpFliI9aVtQ7" title="Operating lease liability">626,699</span>
and a corresponding operating right-of-use asset of $<span id="xdx_909_eus-gaap--OperatingLeaseRightOfUseAsset_iI_c20220102__us-gaap--AdjustmentsForNewAccountingPronouncementsAxis__us-gaap--AccountingStandardsUpdate201602Member_zYgyvvzDLc4h" title="Operating right use of asset">681,327</span>.</span></p>

<p id="xdx_85E_zaaL0LNb2LQ3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></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_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18726-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI https://asc.fasb.org/topic&amp;trid=2122369<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>21
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367634689680">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Financial Instruments<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_CashAndCashEquivalentsAbstract', window );"><strong>Cash and Cash Equivalents [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsAndMarketableSecuritiesTextBlock', window );">Cash, Cash Equivalents, and Financial Instruments</a></td>
<td class="text"><p id="xdx_807_eus-gaap--CashCashEquivalentsAndMarketableSecuritiesTextBlock_zxbOl7ZthPph" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span>Note
3 - <span id="xdx_82D_zS2LVnVl49zi">Cash, Cash Equivalents, and Financial Instruments</span></span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_894_eus-gaap--ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock_zPHr4pCewLL1" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The
following table shows the Company&#8217;s cash, cash equivalents, and marketable investment securities by significant investment category
as of December 31, 2022:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B3_zwWjoJQzKBB1" style="display: none">Schedule
of Cash, Cash Equivalents, and Marketable Investment Securities</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="22" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Adjusted Cost</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Allowance for Credit Losses</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total Unrealized Gains / (Losses)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Fair Value</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Cash and Cash Equivalents</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Marketable Securities</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 40%; padding-left: 10pt">Cash</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_983_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zkc38h6lxtgh" style="width: 6%; text-align: right" title="Adjusted Cost">12,834,444</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zgY1Ay4hp6m2" style="width: 6%; text-align: right" title="Allowance for Credit Losses">&#160;&#160;&#160;&#160;&#160;&#160;<span style="-sec-ix-hidden: xdx2ixbrl0691">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_z960b4wyb304" style="width: 6%; text-align: right" title="Total Unrealized Gains / (Losses)"><span style="-sec-ix-hidden: xdx2ixbrl0693">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zCQg7iql5BH2" style="width: 6%; text-align: right" title="Fair Value">12,834,444</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98A_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zkkCTO5jGJHe" style="width: 6%; text-align: right" title="Cash and Cash Equivalents">12,834,444</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_980_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zgSRbdPQGMS4" style="width: 6%; text-align: right" title="Marketable Securities"><span style="-sec-ix-hidden: xdx2ixbrl0699">-</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Level 1:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Money market funds</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zN8ZWCTwYsR9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Adjusted Cost">146,359</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z2uEjZApc1ei" style="border-bottom: Black 1.5pt solid; text-align: right" title="Allowance for Credit Losses"><span style="-sec-ix-hidden: xdx2ixbrl0703">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z6l5rq1DMLl1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total Unrealized Gains / (Losses)"><span style="-sec-ix-hidden: xdx2ixbrl0705">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zPPwpEbuQB9b" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair Value">146,359</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zfMKpxphIZvg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cash and Cash Equivalents">146,359</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zGlPYXRtRy2g" style="border-bottom: Black 1.5pt solid; text-align: right" title="Marketable Securities"><span style="-sec-ix-hidden: xdx2ixbrl0711">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Subtotal</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zLNjaG6IIuqf" style="text-align: right" title="Adjusted Cost">146,359</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z1z8pbG3jQb9" style="text-align: right" title="Allowance for Credit Losses"><span style="-sec-ix-hidden: xdx2ixbrl0715">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zf8D2XjauWdg" style="text-align: right" title="Total Unrealized Gains / (Losses)"><span style="-sec-ix-hidden: xdx2ixbrl0717">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zObA7U7vYnj7" style="text-align: right" title="Fair Value">146,359</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zOieXp2sZSd9" style="text-align: right" title="Cash and Cash Equivalents">146,359</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z0bhGlztCasj" style="text-align: right" title="Marketable Securities"><span style="-sec-ix-hidden: xdx2ixbrl0723">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Level 2:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">U.S. treasury securities</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z5nMmBtzAvXk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Adjusted Cost">67,892,825</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zPw9cDVl9wd2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Allowance for Credit Losses"><span style="-sec-ix-hidden: xdx2ixbrl0727">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zRpCJUWdWd44" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total Unrealized Gains / (Losses)">389,241</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z51ErO3mpkob" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair Value">68,282,066</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zfjODKPyQVqk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cash and Cash Equivalents">9,993,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zcNeDpsmclh9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Marketable Securities">58,289,066</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Subtotal</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zJhp1AxNUV75" style="border-bottom: Black 1.5pt solid; text-align: right" title="Adjusted Cost">67,892,825</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zA5tutCNr0f6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Allowance for Credit Losses"><span style="-sec-ix-hidden: xdx2ixbrl0739">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zTYUN6xrBmx5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total Unrealized Gains / (Losses)">389,241</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z8QGNiFtKry9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair Value">68,282,066</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zS67B0v91gdc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cash and Cash Equivalents">9,993,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zhBjznmJ0Qk1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Marketable Securities">58,289,066</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt; padding-left: 10pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98F_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231_zdDQuO0jFhJ2" style="border-bottom: Black 2.5pt double; text-align: right" title="Adjusted Cost">80,873,628</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231_zyQR38uUUdp8" style="border-bottom: Black 2.5pt double; text-align: right" title="Allowance for Credit Losses"><span style="-sec-ix-hidden: xdx2ixbrl0751">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98E_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231_zGj6bL8pSmQ6" style="border-bottom: Black 2.5pt double; text-align: right" title="Total Unrealized Gains / (Losses)">389,241</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--TradingSecurities_iI_c20221231_zJOqkFxoHU8h" style="border-bottom: Black 2.5pt double; text-align: right" title="Fair Value">81,262,869</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231_ziAmHZwZNT3h" style="border-bottom: Black 2.5pt double; text-align: right" title="Cash and Cash Equivalents">22,973,803</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_eus-gaap--MarketableSecurities_iI_c20221231_zSyktWhms3Zc" style="border-bottom: Black 2.5pt double; text-align: right" title="Marketable Securities">58,289,066</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AD_z3B7ivT1bCm1" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">Marketable
investment securities held as of December 31, 2022 mature over the next 12 months.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_CashAndCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CashAndCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="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_CashCashEquivalentsAndMarketableSecuritiesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cash, cash equivalents, and debt and equity securities, including any unrealized or realized gain (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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -URI https://asc.fasb.org/topic&amp;trid=2196928<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsAndMarketableSecuritiesTextBlock</td>
</tr>
<tr>
<td style="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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367630918864">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_BusinessCombinationAndAssetAcquisitionAbstract', window );"><strong>Business Combination and Asset Acquisition [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationDisclosureTextBlock', window );">Business Combinations</a></td>
<td class="text"><p id="xdx_80C_eus-gaap--BusinessCombinationDisclosureTextBlock_zvSlnTdkIrkb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
4 &#8211; <span id="xdx_82D_z2tyaouw8BIk">Business Combinations</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
December 31, 2021, the Company completed its acquisitions of Advanced Conceptions, Inc. (&#8220;ACI&#8221;) and Idaho Molecular, Inc. (&#8220;IdMo&#8221;), which were related
entities developing, with the Company, an at-home/point-of-care medical diagnostic device. Upon the completion of the acquisition,
all outstanding ACI and IdMo common stock was initially exchanged for approximately <span id="xdx_901_ecustom--StockIssuedDuringPeriodSharesExchanged_pn5n6_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zQBiShfbBQ44" title="Number of shares exchanged">3.2</span>
million shares of the Company&#8217;s common stock and contingent consideration that includes up to approximately <span id="xdx_90E_ecustom--StockIssuedDuringPeriodSharesContingentConsideration_pn5n6_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zPnhF0WvXfi8" title="Number of shares on contingent consideration">1.4</span>
million shares and approximately <span id="xdx_906_eus-gaap--ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z17Sh1OpxpR9" title="Warrants to purchase shares of common stock">456,000</span>
warrants to purchase shares of the Company&#8217;s common stock. The contingent consideration is based on the achievement of certain
milestones, which include regulatory approval for identified products, as well as production and net revenue targets. Upon the
completion of the acquisition, both ACI and IdMo became <span id="xdx_909_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--ACIAndIDMOMember_zgxagB5DXadk" title="Equity method investment ownership percentage">100</span>%
wholly-owned subsidiaries of the Company.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value of assets acquired and liabilities assumed was based on a preliminary valuation, with estimates and assumptions subject to
change within the measurement period. During 2022, the Company finalized negotiations that were ongoing as of December 31, 2021 with
one remaining shareholder of ACI, which resulted in an increase to the purchase consideration of $<span id="xdx_900_eus-gaap--BusinessCombinationConsiderationTransferred1_c20220101__20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zC4Sdzwgjm08" title="Purchase consideration">580,135</span>. Additionally, there was an
increase of $<span id="xdx_902_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iI_c20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zTtIceZTeuO3" title="Estimated tax liabilities">101,593</span> in the estimated tax liabilities that resulted from the acquisition. Due to the change in purchase consideration
and estimated tax liabilities, a measurement period adjustment was recorded, resulting in an increase to goodwill of $<span id="xdx_90A_eus-gaap--GoodwillPeriodIncreaseDecrease_c20220101__20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zOemQnDwFDfd" title="Increase of goodwill">681,728</span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Following
the resolution with the remaining shareholder, the total number of shares exchanged as purchase consideration was approximately <span id="xdx_90A_ecustom--StockIssuedDuringPeriodSharesExchanged_pn5n6_c20220101__20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zrP9tH0BBAE8" title="Number of shares exchanged">3.3</span> million
shares. Additionally, the updated purchase consideration includes contingent consideration of up to approximately <span id="xdx_901_ecustom--StockIssuedDuringPeriodSharesContingentConsideration_pn5n6_c20220101__20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zZE01ABY3hkd" title="Number of shares on contingent consideration">1.4</span> million shares
and <span id="xdx_903_eus-gaap--ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_iI_c20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z9JaUPz09Kh8" title="Warrants to purchase shares of common stock">465,000</span> warrants to purchase shares of the Company&#8217;s common stock.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
addition, the adjustments to the provisional purchase consideration amount resulted in an increase in the gain on remeasurement of acquisition
contingencies of $<span id="xdx_909_ecustom--RemeasurementOfAcquisitionContingencies_iI_c20221231_z02kcJu2QvUj" title="Remeasurement of acquisition contingencies">78,617</span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_896_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_zoB9dOcK5MMe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
total purchase consideration, including adjustment during the measurement period, was allocated to the assets acquired and liabilities
assumed as set forth below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BC_zBpWnSsXO9jb" style="display: none">Schedule
of Assets and Liabilities assumed</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amounts Recognized as of Acquisition Date (as previously reported)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Measurement Period Adjustments</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amounts Recognized as of Acquisition Date (as adjusted)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Purchase Consideration</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 52%; text-indent: 10pt; padding-left: 0pt">Fair value of common shares issued</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_988_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z5aMwDkMYC6" style="width: 12%; text-align: right" title="Fair value of common shares issued">25,160,223</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98B_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zl9jDNzremH7" style="width: 12%; text-align: right" title="Fair value of common shares issued">480,776</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_985_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zF4tr7SJ2ed7" style="width: 12%; text-align: right" title="Fair value of common shares issued">25,640,999</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Payable to shareholder</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zT9oWzJ6vvW" style="text-align: right" title="Payable to shareholders">100,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6NKrL9iJ6Xg" style="text-align: right" title="Payable to shareholders">(100,000</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zrcLvDmkTEDa" style="text-align: right" title="Payable to shareholders"><span style="-sec-ix-hidden: xdx2ixbrl0797">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 10pt; padding-left: 0pt">Fair value of contingent shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqHlBE2TeBfe" style="text-align: right" title="Fair value of contingent shares">8,684,669</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zAiB51WFkRLf" style="text-align: right" title="Fair value of contingent shares">165,957</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zgASPTa2c2I5" style="text-align: right" title="Fair value of contingent shares">8,850,626</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Fair value of contingent warrants</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zHFgoUGsbtY5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair value of contingent warrants">1,747,972</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zk8EBzLNRS7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair value of contingent warrants">33,402</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zLntKmJTHlXh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair value of contingent warrants">1,781,374</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total fair value of consideration transferred</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98F_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zq8Y7EoXGfIb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Business combination, consideration transferred">35,692,864</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_984_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6eqjpfNBNb2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Business combination, consideration transferred">580,135</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_980_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zJa2SITxTzAe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Business combination, consideration transferred">36,272,999</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Identifiable assets acquired and liabilities assumed</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-indent: 10pt; padding-left: 0pt">Cash</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_986_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zjqRs8TqBtNa" style="text-align: right" title="Cash">1,196,243</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zwIqiNOHJVDf" style="text-align: right" title="Cash"><span style="-sec-ix-hidden: xdx2ixbrl0819">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98F_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zoCQ5SU7Dca6" style="text-align: right" title="Cash">1,196,243</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Accounts receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zR1VEVyGOPQl" style="text-align: right" title="Accounts receivables">31,170</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zJzcHUlxhYik" style="text-align: right" title="Accounts receivables"><span style="-sec-ix-hidden: xdx2ixbrl0825">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zIyX5wCb1wK6" style="text-align: right" title="Accounts receivables">31,170</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Prepaid expenses and other current assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zbaAiONKMTk3" style="text-align: right" title="Prepaid expenses and other current assets">70,321</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zGfN5UU06tW9" style="text-align: right" title="Prepaid expenses and other current assets"><span style="-sec-ix-hidden: xdx2ixbrl0831">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zYYUDSSoZoSc" style="text-align: right" title="Prepaid expenses and other current assets">70,321</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Property and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z4VdkvdGtR49" style="text-align: right" title="Property and equipments">408,173</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqeLJoDbpC43" style="text-align: right" title="Property and equipments"><span style="-sec-ix-hidden: xdx2ixbrl0837">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6jBfUlvuqr8" style="text-align: right" title="Property and equipments">408,173</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Technology - In-process research and development</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_ze5XozRn7Pze" style="text-align: right" title="Research and development in process">26,101,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6qo5o6x4Dca" style="text-align: right" title="Research and development in process"><span style="-sec-ix-hidden: xdx2ixbrl0843">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zKR8Tm5vwSL9" style="text-align: right" title="Research and development in process">26,101,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Non-competition agreements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zVAunUFtzO74" style="text-align: right" title="Non competition agreements">1,094,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zYZHR6yPvnt1" style="text-align: right" title="Non competition agreements"><span style="-sec-ix-hidden: xdx2ixbrl0849">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zLZkkiBfP5V9" style="text-align: right" title="Non competition agreements">1,094,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Accounts payable and accrued other expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zWQgWB38BlBl" style="text-align: right" title="Accounts payable and accrued other expenses">(1,069,274</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zFP1kpZVmam" style="text-align: right" title="Accounts payable and accrued other expenses">(101,593</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zopN2Jh5ioA6" style="text-align: right" title="Accounts payable and accrued other expenses">(1,170,867</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Deferred tax liability</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zcmrW1yJz8xj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax liability">(6,845,587</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zCbpuxXwzNFj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax liability"><span style="-sec-ix-hidden: xdx2ixbrl0861">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zc7D9xtVa4eb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax liability">(6,845,587</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Total identifiable net assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zzUvKq4IhyJi" style="text-align: right" title="Total indentifiable net assets">20,986,046</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z1iMxZtU3ESh" style="text-align: right" title="Total indentifiable net assets">(101,593</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zMW8BD18K1Q1" style="text-align: right" title="Total indentifiable net assets">20,884,453</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Goodwill</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--Goodwill_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zrRHWc5ZnMUh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill">14,706,818</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--Goodwill_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zNdDz62Tu8r8" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill">681,728</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--Goodwill_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zboMmRD6wpW6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill">15,388,546</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zGT0kqlJ9Zb6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">35,692,864</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zR9m7fgGdva8" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">580,135</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqTzeTfYzus9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">36,272,999</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A9_zzmiRTSI2Z0l" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
in-process research and development is considered an indefinite-lived intangible until the completion or abandonment of the research
and development activities. The non-competition agreements are being amortized over a range of <span id="xdx_905_eus-gaap--FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_dtY_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z9bPMhKDR54" title="Finite lived intangible assets  remaining amortization period">1.5</span> to <span id="xdx_90F_eus-gaap--FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_dtY_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zqxOLWsjvGRa" title="Finite lived intangible assets  remaining amortization period">3</span> years.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_BusinessCombinationAndAssetAcquisitionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BusinessCombinationAndAssetAcquisitionAbstract</td>
</tr>
<tr>
<td style="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_BusinessCombinationDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -URI https://asc.fasb.org/topic&amp;trid=2303972<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4946-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367629824912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresTextBlock', window );">Fair Value Measurements</a></td>
<td class="text"><p id="xdx_805_eus-gaap--FairValueDisclosuresTextBlock_z1MIZ3VUEmR7" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
5 &#8211; <span id="xdx_82B_zdSaUArUCdde">Fair Value Measurements</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company measures and records certain financial assets and liabilities at fair value on a recurring basis. Fair value is based on the
price that would be received from selling an asset or paid to transfer a liability in an orderly transaction between market participants
at the measurement date.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following three levels of inputs are used to measure the fair value of financial assets and liabilities:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
1: Quoted market prices in active markets for identical assets or liabilities.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
2: Observable market-based inputs or unobservable inputs that are corroborated by market data.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Level
3: Unobservable inputs that are not corroborated by market data.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89D_eus-gaap--FairValueAssetsMeasuredOnRecurringBasisTextBlock_zNmBIn0gxFR5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes the assets and liabilities measured at fair value on a recurring basis as of December 31, 2022 and December
31, 2021, by level within the fair value hierarchy:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BE_zHl7PXx6c4Q9" style="display: none">Schedule of Fair Value Assets and Liabilities</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_za35LZtp3k6f" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 1)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zZzHIAE0QYXe" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 2)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel3Member_zqm58cXIqJHj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 3)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49F_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember_zQ1lL7V2gdYj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="14" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 1)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 2)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 3)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Assets:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--CashAndCashEquivalentsFairValueDisclosure_iI_zbyRrbAqafw" style="vertical-align: bottom; background-color: White">
    <td style="width: 44%; text-align: left; text-indent: 10pt; padding-left: 0pt">Cash equivalents</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">&#160;&#160;&#160;<span style="-sec-ix-hidden: xdx2ixbrl0891">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">10,179,667</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0893">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">10,179,667</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--MarketableSecurities_iI_pp0p0_zzVO4M4LdAeb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 0pt; padding-left: 10pt">Marketable securities (U.S. treasury bills and notes)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0896">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">58,289,066</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0898">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">58,289,066</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--AssetsFairValueDisclosure_iI_pp0p0_zUWfYQWephfb" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Total assets measured at fair value</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0901">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">68,468,733</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0903">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">68,468,733</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Liabilities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_ecustom--FairValueOfContingentConsiderationToCommonStock_iI_pp0p0_za3kJmZITjvf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Contingent consideration - common stock</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0906">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0907">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">2,499,147</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">2,499,147</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_ecustom--FairValueOfContingentConsiderationToWarrants_iI_pp0p0_z7AG7cBfWd0e" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Contingent consideration - warrants</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0911">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0912">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">233,209</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">233,209</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LiabilitiesFairValueDisclosure_iI_pp0p0_zaWsVHrCUdW6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Total liabilities measured at fair value</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0916">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0917">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,732,356</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,732,356</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49F_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z85NmgSrPMEe" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 1)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zOzl9z5G0Llj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 2)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel3Member_zdaj3V3Afke1" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 3)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49F_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember_zhrYTVGZIXgj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="14" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 1)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 2)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 3)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Assets:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--MarketableSecurities_iI_pp0p0_zFMgCxKeNT1i" style="vertical-align: bottom; background-color: White">
    <td style="width: 44%; text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Marketable securities (certificates of deposit)</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right">&#160;&#160;&#160;<span style="-sec-ix-hidden: xdx2ixbrl0921">-</span></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right">1,255,266</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0923">-</span></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right">1,255,266</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--AssetsFairValueDisclosure_iI_pp0p0_z7tnOpuiG6s4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total assets measured at fair value</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0926">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">1,255,266</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0928">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">1,255,266</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Liabilities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_ecustom--FairValueOfContingentConsiderationToCommonStock_iI_pp0p0_z8Qq2Av8CJc6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Contingent consideration - common stock</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0931">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0932">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">8,684,669</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">8,684,669</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_ecustom--FairValueOfContingentConsiderationToWarrants_iI_pp0p0_z1AwCSUhJ3x" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Contingent consideration - warrants</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0936">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0937">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,747,972</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,747,972</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LiabilitiesFairValueDisclosure_iI_pp0p0_zeXUXPL2mrF" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total liabilities measured at fair value</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0941">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0942">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">10,432,641</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">10,432,641</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AC_zzW0iUPDTim8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s financial instruments that are measured at fair value on a recurring basis consist of certificates of deposit and U.S.
treasury bills and notes as of December 31, 2021 and 2022, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
connection with the acquisitions of IdMo and ACI on December 31, 2021, the Company recorded a liability for contingent consideration
in the form of shares of common stock and warrants to purchase common stock. The fair value of contingent consideration is calculated
using a discounted probability weighted valuation model. Discount rates used in such calculations are a significant assumption that are
not observed in the market, and therefore, the resulting fair value represents a Level 3 measurement.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89F_eus-gaap--FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_z5taQBMfavhc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
changes for Level 3 items measured at fair value on a recurring basis are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BF_zDAxofxhNmji" style="display: none">Schedule of Changes in Fair Value Measurement</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_49F_20220101__20221231_znsNOgdNLwad" style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--BusinessCombinationContingentConsiderationLiabilityNoncurrent_iS_pp0p0_zkKvjc5i4wz1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; padding-left: 0pt">Fair value as of December 31, 2021</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">10,432,641</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_ecustom--ContingentConsideredIssuedForMeasurementPeriodAdjustments_z247waNkq5Jg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Change in contingent purchase consideration for measurement period adjustments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">199,359</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_ecustom--ContingentConsideredIssuedForBusinessAcquisitions_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Change in fair value of contingent consideration issued for business acquisitions</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(7,899,644</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--BusinessCombinationContingentConsiderationLiabilityNoncurrent_iE_zfFo3ktUKHt6" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt; padding-left: 0pt">Fair value as of December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,732,356</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AD_zodLvhN4guXj" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
fair value of the contingent consideration is based on the fair value of the contingent consideration-common stock and contingent consideration-warrants.
The fair value of the contingent consideration-common stock is equal to the probability-adjusted value of the Company&#8217;s common
stock as of the valuation date. The fair value of the contingent consideration-warrants is equal to the probability adjusted value of
a call option with terms consistent with the terms of the warrants as of the valuation date. Prior to the probability adjustments, the
warrants were valued based on the following inputs:</span></p>

<p id="xdx_897_eus-gaap--FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock_zZHSiyyF7nba" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B4_zw5C8B39DwU2" style="display: none">Schedule of Contingent Consideration Common Stock and Warrants</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 56%; text-indent: 10pt; padding-left: 0pt">Stock price</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zVVJRU7AwPsf" style="width: 18%; text-align: right" title="Warrants measurement input">2.52</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_z7vqzQeVIZG" style="width: 18%; text-align: right" title="Warrants measurement input">8.93</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 10pt; padding-left: 0pt">Strike price</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputStrikePriceMember_zfmlUrenCJN4" style="text-align: right" title="Warrants measurement input">9.13</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98D_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputStrikePriceMember_zGt6eTgMthgf" style="text-align: right" title="Warrants measurement input">9.13</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-indent: 10pt; padding-left: 0pt">Volatility</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right" title="Warrants measurement input"><span id="xdx_903_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputPriceVolatilityMember_zIyI4ZXfye5a" title="Warrants measurement input">75.00</span></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right" title="Warrants measurement input"><span id="xdx_90A_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputPriceVolatilityMember_z8EbF6amFt7" title="Warrants measurement input">80.00</span></td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Risk-free rate</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right" title="Warrants measurement input"><span id="xdx_906_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zCGVh05kNBZ8" title="Warrants measurement input">4.10</span></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right" title="Warrants measurement input"><span id="xdx_90C_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zUlOw4xorjy8" title="Warrants measurement input">1.30</span></td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Expected term</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right" title="Warrants measurement input"><span id="xdx_90E_eus-gaap--WarrantsAndRightsOutstandingTerm_iI_dtY_c20221231_zdHebkjF1P7k" title="Expected term">4.0</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right" title="Warrants measurement input"><span id="xdx_906_eus-gaap--WarrantsAndRightsOutstandingTerm_iI_dtY_c20211231_zAvxvuojf4r4" title="Expected term">5.0</span></td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
order to calculate the probability-adjusted value of the contingent consideration-common stock and contingent
consideration-warrants, the Company estimated the probability as of the valuation date of achieving certain milestones, which
include regulatory approval for identified products, as well as production and net revenue targets. The probability of achieving the
milestone related to net revenues was estimated as of the acquisition date using a Monte Carlo simulation valuation model.
Significant inputs other than the fair value assumptions noted above were consistent as of the valuation date. The unobservable
significant inputs to the valuation model were as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><b>December 31, 2022</b></td>
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; width: 60%">Stock price</td>
    <td style="width: 2%">&#160;</td>
    <td style="width: 1%">$</td>
    <td id="xdx_98E_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zlQ87Dl6Vyla" style="text-align: right; width: 16%" title="Business combination,contingent consideration">2.52</td>
    <td style="width: 1%">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zoWfN4LNLVik" style="width: 16%; text-align: right" title="Business combination,contingent consideration">8.93</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Risk-free rate</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_986_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_z4yZAY1oryd5" style="text-align: right" title="Business combination,contingent consideration">4.10</td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zqs5FoMKZmm4" style="text-align: right" title="Business combination,contingent consideration">1.30</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Expected term</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_988_ecustom--BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_dtY_c20220101__20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputExpectedTermMember_zV03xOskg673" style="text-align: right" title="Business combination,contingent consideration">4.0</td>
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_dtY_c20210101__20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputExpectedTermMember_zMyG6tQ5glZ9" style="text-align: right" title="Business combination,contingent consideration">5.0</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Weighted-average cost of capital</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_98C_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputCostOfCapitalMember_zign2TiBfOpj" style="text-align: right" title="Business combination,contingent consideration">27.00</td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputCostOfCapitalMember_zsPtNGISMoW9" style="text-align: right" title="Business combination,contingent consideration">27.00</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Revenue discount rate</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_982_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputDiscountRateMember_zj7XSoiFH0le" style="text-align: right" title="Business combination,contingent consideration">9.50</td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputDiscountRateMember_z0asoFeyAfBk" style="text-align: right" title="Business combination,contingent consideration">9.50</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Equity volatility</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_98D_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputEquityVolatilityMember_zrH4SwDUpeC1" style="text-align: right" title="Business combination,contingent consideration">75.00</td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputEquityVolatilityMember_zsAOTJizpiud" style="text-align: right" title="Business combination,contingent consideration">80.00</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Asset volatility</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_98C_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputAssetVolatilityMember_zlss7vR74gW3" style="text-align: right" title="Business combination,contingent consideration">80.00</td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputAssetVolatilityMember_zinRGtpOSIJ5" style="text-align: right" title="Business combination,contingent consideration">80.00</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Revenue volatility</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_984_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputRevenueVolatilityMember_z6SxEvgIuM8f" style="text-align: right" title="Business combination,contingent consideration">30.00</td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputRevenueVolatilityMember_zD07wLrSxP54" style="text-align: right" title="Business combination,contingent consideration">30.00</td><td style="text-align: left">%</td></tr>
  </table>

<p id="xdx_8A3_zIXG8v5onFl8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Fair
Value of Other Financial Instruments</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
carrying amounts of certain financial instruments, including cash held in banks, accounts receivable, notes receivable, accounts payable,
accrued liabilities, and other liabilities approximate fair value due to their short-term maturities and are excluded from the fair value
tables above.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></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_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="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_FairValueDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresTextBlock</td>
</tr>
<tr>
<td style="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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367629890032">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock', window );">Property and Equipment</a></td>
<td class="text"><p id="xdx_803_eus-gaap--PropertyPlantAndEquipmentDisclosureTextBlock_zTSQtH96u0pc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
6 &#8211; <span id="xdx_824_zxVUEkm82tod">Property and Equipment</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_894_eus-gaap--PropertyPlantAndEquipmentTextBlock_zufKFbdQN93d" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Property
and equipment, net consisted of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zAadQyTXeCaa" style="display: none">Schedule
of Property and Equipment</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; font-weight: bold; text-align: center">Estimated Useful Lives</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"> in years</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 42%; text-align: left">Lab equipment</td><td style="width: 2%">&#160;</td>
    <td style="width: 16%; text-align: center"><span id="xdx_901_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember__srt--RangeAxis__srt--MinimumMember_znVZJlCzr6Ic" title="Property and equipment estimated useful lives">3</span> - <span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember__srt--RangeAxis__srt--MaximumMember_zF5oTl8H1ogj" title="Property and equipment estimated useful lives">5</span></td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zmu1PucZUiq8" style="width: 16%; text-align: right" title="Property and equipment, gross">3,574,730</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zvVVONa7RET4" style="width: 16%; text-align: right" title="Property and equipment, gross">2,476,813</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: center"><span id="xdx_901_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdsAndLeaseholdImprovementsMember__srt--RangeAxis__srt--MinimumMember_ztUqRzb2vuV8" title="Property and equipment estimated useful lives">0</span> -<span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdsAndLeaseholdImprovementsMember__srt--RangeAxis__srt--MaximumMember_z2MMxlVmKNS" title="Property and equipment estimated useful lives">3</span></td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_z0kVDaESJbz7" style="text-align: right" title="Property and equipment, gross">224,957</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zAWPIBdXfhZj" style="text-align: right" title="Property and equipment, gross">3,157</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Office equipment, furniture and other</td><td>&#160;</td>
    <td style="text-align: center"><span id="xdx_90B_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember__srt--RangeAxis__srt--MinimumMember_zKxW5Kt7wvUf" title="Property and equipment estimated useful lives">2</span> - <span id="xdx_905_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember__srt--RangeAxis__srt--MaximumMember_z7soLGISr3b7" title="Property and equipment estimated useful lives">5</span></td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zI15Oax5n0q3" style="text-align: right" title="Property and equipment, gross">112,044</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zj6rcaM7vD6j" style="text-align: right" title="Property and equipment, gross">75,401</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Less accumulated depreciation and amortization</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iNI_pp0p0_di_c20221231_ztsrrGjJbPX6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: accumulated depreciation">(1,372,248</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iNI_di_c20211231_zSRxpUN4hrMb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: accumulated depreciation">(622,155</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left; padding-bottom: 2.5pt">Fixed assets, net</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20221231_zqUJfyGgMRq2" style="border-bottom: Black 2.5pt double; text-align: right" title="Property and equipment, net">2,539,483</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231_zK8eEBaGZP4a" style="border-bottom: Black 2.5pt double; text-align: right" title="Property and equipment, net">1,933,216</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A3_zYZGAX9aj8r6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></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_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_PropertyPlantAndEquipmentDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99893-112916<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -URI https://asc.fasb.org/topic&amp;trid=2155823<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=SL120174063-112916<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99779-112916<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367629805312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangible Assets<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock', window );">Goodwill and Intangible Assets</a></td>
<td class="text"><p id="xdx_801_eus-gaap--GoodwillAndIntangibleAssetsDisclosureTextBlock_zvTqkoXhIJff" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
7 - <span id="xdx_827_z2i3tE7VZVn6">Goodwill and Intangible Assets</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Goodwill</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill
represents the excess of purchase price and related costs over the value assigned to net tangible and identifiable intangible assets
acquired in business combinations. The following table presents the changes in the carrying amount of goodwill for the year ended December
31, 2022:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89B_eus-gaap--ScheduleOfGoodwillTextBlock_zy5wuSkyLhJe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zXJqfN4WXEx2" style="display: none">Schedule
of Goodwill</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Balance as of December 31, 2021</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--Goodwill_iS_c20220101__20221231_zSG9p4Pxx3b3" style="width: 16%; text-align: right" title="Goodwil - beginning">14,706,818</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Measurement period adjustments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--GoodwillTranslationAndPurchaseAccountingAdjustments_c20220101__20221231_zpqLXCPVf9Ue" style="text-align: right" title="Measurement period adjustments">681,728</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Goodwill impairment charges</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--GoodwillImpairmentLoss_iN_di_c20220101__20221231_z4hdoEOIjmW2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill impairment charges">(15,388,546</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Balance as of December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_982_eus-gaap--Goodwill_iE_c20220101__20221231_z7ijE6Juloa3" style="border-bottom: Black 2.5pt double; text-align: right" title="Goodwill - ending"><span style="-sec-ix-hidden: xdx2ixbrl1056">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AE_zAhn09mGzKHg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company assesses goodwill for impairment at the reporting unit level on an annual basis, or whenever events or changes in circumstances
occur that indicate that the fair value of a reporting unit is below its carrying amount. The Company estimates the fair value of its
reporting unit by using forecasts of discounted future cash flows and peer market multiples. If the fair value is less than the carrying
value, impairment will be recognized in the amount by which the carrying value exceeds the fair value. The Company performed a qualitative
and quantitative goodwill impairment assessment as of December 31, 2022. Based on the impairment assessment performed the Company concluded
that it was more likely than not that the fair value of the Company&#8217;s reporting unit was less than it&#8217;s carrying amount.
Accordingly, the Company recorded an impairment charge to reduce the carrying value of goodwill to $<span id="xdx_901_eus-gaap--Goodwill_iI_dxL_c20221231_z9GLIApMpEy7" title="Goodwill::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1058">0</span></span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Intangible
Assets, Net</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89A_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zUJFjeOcz53i" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Intangible
assets, net consisted of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/><span id="xdx_8BB_zxPOmLGPkh4g" style="display: none">Schedule of Intangible Assets, Net</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="13" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Weighted-Average</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Gross</td><td style="font-weight: bold">&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Net</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Useful Life (1)</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Carrying</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Accumulated</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Carrying</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(in Years)</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amortization</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 28%; text-align: left">In-process research and development</td><td style="width: 2%">&#160;</td>
    <td style="width: 16%; text-align: center"><span id="xdx_90A_ecustom--IndefiniteLivedIntangibleAssetUsefulLife_c20220101__20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_fKDEp_z31eQo26Yp3h" title="Estimated useful lives in years, term">Indefinite</span></td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_zlqYNjg9VeQb" style="width: 14%; text-align: right" title="Intangible assets, gross">26,101,000</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_z6TiZWwKz567" style="width: 14%; text-align: right" title="Less accumulated amortization"><span style="-sec-ix-hidden: xdx2ixbrl1066">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_z1DHedeNQFx8" style="width: 14%; text-align: right" title="Intangible assets, net">26,101,000</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Non-competition agreements</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="text-align: center; padding-bottom: 1.5pt"><span id="xdx_903_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20220101__20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_fKDEp_zyl1YHHvtPda" title="Estimated useful lives in years">2.7</span></td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zKLnTMb3a3xj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, gross">1,094,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zjqD8jYMj49k" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less accumulated amortization">(426,667</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zkbTNhTIkuk5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, net">667,333</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 10pt">Total intangible assets</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231_z0WMvdVhQkE" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, gross">27,195,000</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231_zlLPxyW87qx9" style="border-bottom: Black 2.5pt double; text-align: right" title="Less accumulated amortization">(426,667
                                                                          </td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_986_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231_z4Mzzlolgmhh" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, net">26,768,333</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="13" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Weighted-Average</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Gross</td><td style="font-weight: bold">&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Net</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Useful Life (1)</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Carrying</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Accumulated</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Carrying</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(in Years)</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amortization</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 28%; text-align: left">In-process research and development</td><td style="width: 2%">&#160;</td>
    <td style="width: 16%; text-align: center"><span id="xdx_90D_ecustom--IndefiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_fKDEp_zmb4oy7mWM02" title="Estimated useful lives in years, term">Indefinite</span></td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" style="width: 14%; text-align: right" title="Intangible assets, gross">26,101,000</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" style="width: 14%; text-align: right" title="Less accumulated amortization"><span style="-sec-ix-hidden: xdx2ixbrl1088">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" style="width: 14%; text-align: right" title="Intangible assets, net">26,101,000</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Non-competition agreements</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="text-align: center; padding-bottom: 1.5pt"><span id="xdx_902_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_fKDEp_zvgT5UO5hyG4" title="Estimated useful lives in years">2.7</span></td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, gross">1,094,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less accumulated amortization"><span style="-sec-ix-hidden: xdx2ixbrl1096">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, net">1,094,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 10pt">Total intangible assets</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, gross">27,195,000</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Less accumulated amortization"><span style="-sec-ix-hidden: xdx2ixbrl1102">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98A_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, net">27,195,000</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A8_zkJq1VlpJQtl" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_890_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zSenvXJLUMnd" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
expected future annual amortization expense of the Company&#8217;s intangible assets held as of December 31, 2022 is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_z9TOq4K1fl82" style="display: none">Schedule
of Future Amortization Expense</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; text-align: left; font-weight: bold">Year Ending December 31,</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_495_20221231_zZOgbiMOmSo6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amortization Expense</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_maFLIANzZiM_z6Mwhi5MtC03" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: left; padding-left: 10pt">2023</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right">364,668</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_maFLIANzZiM_zPi6oRKVcS4g" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">2024</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">302,665</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsNet_iTI_mtFLIANzZiM_z3TYXfozHJl7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">667,333</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A0_zHH8uO1SyI2a" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="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_GoodwillAndIntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 goodwill and intangible 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -URI https://asc.fasb.org/topic&amp;trid=2144416<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367630937584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Expenses<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock', window );">Accrued Expenses</a></td>
<td class="text"><p id="xdx_802_eus-gaap--AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_zm6Y3esEzqU3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
8 - <span id="xdx_825_zAY3xpmuykU1">Accrued Expenses</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_895_eus-gaap--ScheduleOfAccruedLiabilitiesTableTextBlock_z9hfSnagKB3e" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Accrued
expenses consisted of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/><span id="xdx_8B6_zH6tJZRCqCYg" style="display: none">Schedule of Accrued Expenses</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_496_20221231_zkSHRlKVq0s3" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20211231_zjQv8PLgiAbg" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--AccruedPayrollTaxesCurrent_iI_maALCzYz0_zviMbejSzDh2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Payroll liabilities</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">428,354</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">2,455,694</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--AccruedSalesCommissionCurrent_iI_maALCzYz0_z4EfOxx8R6g1" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Distributor commissions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">159,725</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">509,500</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--OtherAccruedLiabilitiesCurrent_iI_maALCzYz0_zW1KYHmRCux8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Other accrued liabilities</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">346,368</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">894,458</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--AccruedLiabilitiesCurrent_iI_mtALCzYz0_zKwdyYIa59bj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt">Total accrued expenses</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">934,447</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">3,859,652</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A5_zWUluv5rLJP" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></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_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 accounts payable and accrued liabilities at the end of the reporting period.</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> -Publisher FASB<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),20,24)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="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>27
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367629878112">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenue</a></td>
<td class="text"><p id="xdx_804_eus-gaap--RevenueFromContractWithCustomerTextBlock_zJUwRxDKasJf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
9 &#8211; <span id="xdx_822_zjkqTOCXytW6">Revenue</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89A_eus-gaap--ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_zM7wlJgRkMy7" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table sets forth revenue by geographic area:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/><span id="xdx_8B9_zmM82Zzp7lIe" style="display: none">Summary of Revenue by Geographic Area</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Years Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">United States</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231__srt--StatementGeographicalAxis__country--US_zimrR6QgVbRf" style="width: 16%; text-align: right" title="Revenue">24,671,554</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__country--US_z7WKIFaN0eG2" style="width: 16%; text-align: right" title="Revenue">52,185,812</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Rest of World</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231__srt--StatementGeographicalAxis__custom--RestOfWorldMember_zYuxB70qmDc2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Revenue">9,546,655</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__custom--RestOfWorldMember_zCDwnwTChxM1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Revenue">45,699,791</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt; padding-left: 10pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98F_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231_za3Y0xDQt9R3" style="border-bottom: Black 2.5pt double; text-align: right" title="Revenue">34,218,209</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231_zIhBz77hyrBd" style="border-bottom: Black 2.5pt double; text-align: right" title="Revenue">97,885,603</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Percentage of revenue by area:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">United States</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20220101__20221231__srt--StatementGeographicalAxis__country--US__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zxV4aaR3VD1h" style="text-align: right" title="Percentage of revenue">72</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20210101__20211231__srt--StatementGeographicalAxis__country--US__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zRsBOsltOZh1" style="text-align: right" title="Percentage of revenue">53</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Rest of World</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20220101__20221231__srt--StatementGeographicalAxis__custom--RestOfWorldMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zWJhVAw4HHPh" style="text-align: right" title="Percentage of revenue">28</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20210101__20211231__srt--StatementGeographicalAxis__custom--RestOfWorldMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zbZY118tALWh" style="text-align: right" title="Percentage of revenue">47</td><td style="text-align: left">%</td></tr>
  </table>

<p id="xdx_8AE_z6DTVykvSYy6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Deferred
Revenue</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_898_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_zdzSJgbIrtU6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Changes
in the Company&#8217;s deferred revenue balance for the years ended December 31, 2022 and 2021 were as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B9_zgyashcgWsyc" style="display: none">Schedule of Deferred Revenue</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; padding-left: 0pt">Balance as of December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ContractWithCustomerLiability_iS_c20210101__20211231_zaNqra3MoAck" style="width: 14%; text-align: right" title="Deferred revenue, beginning balance">305,307</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Revenue recognized included in deferred revenue balance at the beginning of the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_iN_di_c20210101__20211231_znJaQpWhemu" style="text-align: right" title="Revenue recognized included in deferred revenue balance at the beginning of the period">(256,110</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Increase due to prepayments from customers</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_ecustom--IncreaseDueToPrepaymentsFromCustomers_c20210101__20211231_zIdtHNZ5daS4" style="text-align: right" title="Increase due to prepayments from customers">79,213</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Increase due to note receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_ecustom--IncreaseDueToNoteReceivable_c20210101__20211231_zhlcMCtd0jnc" style="text-align: right" title="Increase due to note receivable">150,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Decrease due to refunds to customers and application to open balances</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_ecustom--DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances_iN_di_c20210101__20211231_zWwoYEv5wWr6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Decrease due to refunds to customers and application to open balances">(128,410</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 0pt">Balance as of December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_983_eus-gaap--ContractWithCustomerLiability_iS_c20220101__20221231_zFhMrgQZDwWk" style="text-align: right" title="Deferred revenue, beginning balance">150,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Revenue recognized included in deferred revenue balance at the beginning of the period</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_iN_di_c20220101__20221231_zxxFrWtj6R1c" style="border-bottom: Black 1.5pt solid; text-align: right" title="Revenue recognized included in deferred revenue balance at the beginning of the period">(150,000</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt; padding-left: 0pt">Balance as of December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--ContractWithCustomerLiability_iE_c20220101__20221231_zkZzjylX9Hyi" style="border-bottom: Black 2.5pt double; text-align: right" title="Deferred revenue, Ending balance"><span style="-sec-ix-hidden: xdx2ixbrl1170">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A7_zHA6d8SMDEae" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -URI https://asc.fasb.org/topic&amp;trid=49130388<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130551-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130556-203045<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130550-203045<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130558-203045<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130554-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>28
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367628507360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings per Share<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Earnings per Share</a></td>
<td class="text"><p id="xdx_804_eus-gaap--EarningsPerShareTextBlock_zot6njMAJs1c" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
10 &#8211; <span id="xdx_82D_zxFu40OGiPvi">Earnings per Share</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_896_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zFu7d9B86eWh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table reconciles the numerator and the denominator used to calculate basic and diluted earnings per share for years ended December
31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BC_zW4rVQiMKRi" style="display: none">Schedule of Basic and Diluted Earnings Per Share</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_492_20220101__20221231_z9M85j28GsQ8" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20210101__20211231_z5oOCk12xVr9" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Years Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold">Numerator</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--NetIncomeLoss_z297CqgT2nP7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left; padding-bottom: 2.5pt">Net income, as reported</td><td style="width: 2%; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; width: 16%; text-align: right">(14,238,249</td><td style="width: 1%; padding-bottom: 2.5pt; text-align: left">)</td><td style="width: 2%; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; width: 16%; text-align: right">36,658,564</td><td style="width: 1%; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold">Denominator</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_zpKSsPuKKwNk" style="vertical-align: bottom; background-color: White">
    <td>Weighted average shares, basic</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">31,479,028</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">28,874,555</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--WeightedAverageNumberDilutedSharesOutstandingAdjustment_zGZ0UQ8vOq0j" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Dilutive effect of stock options, warrants and RSUs</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1182">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,029,131</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_zipzMT2Yjxwl" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt">Shares used to compute diluted earnings per share</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">31,479,028</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">29,903,686</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--EarningsPerShareBasic_pid_zv6tUWCanpve" style="vertical-align: bottom; background-color: White">
    <td>Basic earnings per share</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">(0.45</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1.27</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--EarningsPerShareDiluted_pid_zdtnkl0idUJd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Diluted earnings per share</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">(0.45</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1.23</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A4_zZPmtsaZ1mb8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For
the year ended December 31, 2021, potentially dilutive securities of <span id="xdx_908_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_c20210101__20211231_z5mNnEeEIssi" title="Securities excluded from computation of diluted earnings per share">154,644</span> were excluded from the computation of diluted earnings per
share because the effect would have been anti-dilutive. The computation of diluted earnings per share for the years ended December 31,
2022 and December 31, 2021 also excludes the approximately <span id="xdx_90E_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_pn5n6_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zyCVXZeusELd" title="Securities excluded from computation of diluted earnings per share"><span id="xdx_904_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_pn5n6_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zEL5HRB7zYRg" title="Securities excluded from computation of diluted earnings per share">1.4</span></span> million shares of common stock and approximately <span id="xdx_90D_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_zqDJ4SZs2htg" title="Securities excluded from computation of diluted earnings per share">465,000</span> warrants to purchase
shares of common stock mentioned in Note 4 that are contingent upon the achievement of certain milestones.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
a result of incurring a net loss for the year ended December 31, 2022, <span id="xdx_90A_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_pid_do_uShares_c20220101__20221231_zMXTAeNci101" title="Securities excluded from computation of diluted earnings per share">no</span> potentially dilutive securities are included in the calculation
of diluted earnings per share because such effect would be anti-dilutive. The Company had potentially dilutive securities as of December
31, 2022, consisting of: (i) <span id="xdx_901_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_c20220101__20221231__us-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis__us-gaap--RestrictedStockUnitsRSUMember_zfMMExuuL1V4" title="Securities excluded from computation of diluted earnings per share">1,443,238</span> restricted stock units and (ii) <span id="xdx_903_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_c20220101__20221231__us-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis__us-gaap--EmployeeStockOptionMember_zCWZUpG2lyZe" title="Securities excluded from computation of diluted earnings per share">50,000</span> options.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_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_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 earnings per share.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109243012&amp;loc=SL65017193-207537<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -URI https://asc.fasb.org/topic&amp;trid=2144383<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3630-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="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>29
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367629836000">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-Based Payment Arrangement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock', window );">Stock-Based Compensation</a></td>
<td class="text"><p id="xdx_80C_eus-gaap--DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_zrE0U3lqKW07" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
11 &#8211; <span id="xdx_82A_zjDZwJ8HzAl8">Stock-Based Compensation</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Stock
Incentive Plans</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s board of directors adopted, and shareholders approved, the Co-Diagnostics, Inc. Amended and Restated 2015 Long Term Incentive
Plan (the &#8220;Incentive Plan&#8221;) providing for the issuance of stock-based incentive awards to employees, officers, consultants,
directors and independent contractors. On August 31, 2022 the shareholders approved an increase in the number of awards available for
issuance under the Incentive Plan to an aggregate of <span id="xdx_900_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_iI_c20220831__us-gaap--PlanNameAxis__custom--TwoThousandFifteenLongTermIncentivePlanMember_z17TDeg04W69" title="Number of common shares availalble for issuance">12,000,000</span> shares of common stock. The number of awards available for issuance under
the Incentive Plan was <span id="xdx_907_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_iI_c20221231__us-gaap--PlanNameAxis__custom--TwoThousandFifteenLongTermIncentivePlanMember_z6l0Wg4KYHKd" title="Number of common shares availalble for issuance">6,210,790</span> at December 31, 2022.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Stock
Options</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89D_eus-gaap--ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_zU7Jdw4RcIo6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes option activity during the years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B7_zUfDgN8BJuNc" style="display: none">Schedule of Option Activity</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Number of Options</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Exercise Price</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Fair Value</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Remaining Contractual Life (Years)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 44%">Outstanding at December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_c20210101__20211231_zZ8tWKvxHUo1" style="width: 10%; text-align: right" title="Number of Options Outstanding, Beginning">1,300,588</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zYlYqcyPL3vj" style="width: 10%; text-align: right" title="Weighted Average Exercise Price Outstanding, Beginning">2.44</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20210101__20211231_ziwNIJ8YdwV8" style="width: 10%; text-align: right" title="Weighted Average Fair Value Outstanding, Beginning">1.24</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_c20210101__20211231_ztgppmJTgss7" style="text-align: right" title="Number of Options Outstanding, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1222">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zgPhkaRRZ2Nf" style="text-align: right" title="Weighted Average Exercise Price, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1224">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20210101__20211231_zqclO0wK9Vm8" style="text-align: right" title="Weighted Average Fair Value, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1226">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_c20210101__20211231_zYdtBO0NMSr3" style="text-align: right" title="Number of Options Outstanding, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1228">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zU5MuRoAul8d" style="text-align: right" title="Weighted Average Exercise Price, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1230">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_c20210101__20211231_z8aAk9CDvFoh" style="text-align: right" title="Weighted Average Fair Value, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1232">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Forfeited/Cancelled</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_c20210101__20211231_zu1AG2fNXBD4" style="text-align: right" title="Number of Options Outstanding, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1234">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_c20210101__20211231_zgjwcSQcTQ95" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1236">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_c20210101__20211231_zwKulepzb3gg" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1238">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_di_c20210101__20211231_z6fnIuxBWCek" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Options Outstanding, Exercised">(189,225</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zugS8rkljjsj" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised">2.38</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_98C_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised_pid_c20210101__20211231_zkJOrwsIEpab" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised">1.12</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Outstanding at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_c20220101__20221231_z9wxyPHMMC1" style="text-align: right" title="Number of Options Outstanding, Beginning">1,111,363</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20220101__20221231_zk2AcgXgmtJ3" style="text-align: right" title="Weighted Average Exercise Price Outstanding, Beginning">2.12</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20220101__20221231_zjInKmA0dMTe" style="text-align: right" title="Weighted Average Fair Value Outstanding, Beginning">1.31</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_c20220101__20221231_z5FBgPgVdjsh" style="text-align: right" title="Number of Options Outstanding, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1252">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zodQd860ouGg" style="text-align: right" title="Weighted Average Exercise Price, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1254">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20220101__20221231_zJUkPQL4NJwh" style="text-align: right" title="Weighted Average Fair Value, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1256">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_c20220101__20221231_zhFFAtW5zTae" style="text-align: right" title="Number of Options Outstanding, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1258">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_c20220101__20221231_zjPS2hiTgCh6" style="text-align: right" title="Weighted Average Exercise Price, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1260">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_c20220101__20221231_zCqNK3wWDpXh" style="text-align: right" title="Weighted Average Fair Value, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1262">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Forfeited/Cancelled</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_c20220101__20221231_zHUUaMJpCdYh" style="text-align: right" title="Number of Options Outstanding, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1264">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_c20220101__20221231_zRUk3W6hhVI8" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1266">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_c20220101__20221231_zUyrkgvRmw2a" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1268">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_di_c20220101__20221231_zKHpqEMoJre4" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Options Outstanding, Exercised">(70,791</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zXw1rlKCHEfe" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised">1.10</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_985_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised_pid_c20220101__20221231_zEeDOOsIJpUi" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised">0.51</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Outstanding at December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_c20220101__20221231_ztBpzDGj1KIb" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Options Outstanding, Ending">1,040,572</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_pid_c20220101__20221231_zM7nlYIox1r7" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Exercise Price Outstanding, Ending">2.19</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_98E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231_zh6Xy9HXO3h7" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Fair Value Outstanding, Ending">1.37</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; text-align: right"><span id="xdx_902_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm_dtY_c20220101__20221231_zZjhpbzX2xo7" title="Weighted-average Remaining Contractual Life (years) Outstanding, Ending">5.88</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Exercisable at December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_c20220101__20221231_zfD15avwOGL1" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Options Exercisable Ending">1,040,572</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_iE_pid_c20220101__20221231_z62yJHkW9Ii9" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Exercise Price, Exercisable Ending">2.19</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_981_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable_iE_pid_c20220101__20221231_zicDaWEAxMB9" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Fair Value, Exercisable Ending">1.37</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; text-align: right"><span id="xdx_906_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_dtY_c20220101__20221231_zLgkXNayJ8n7" title="Weighted-average Remaining Contractual Life (years), Exercisable Ending">5.88</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A5_zhFhDUfFEVUc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
total intrinsic value of options exercised during the years ended December 31, 2022 and 2021 was approximately $<span id="xdx_904_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_pn5n6_c20220101__20221231__us-gaap--AwardTypeAxis__custom--StockOptionsMember_zfoHhQgabM16" title="Intrinsic value of options value exercised">0.4</span> million and $<span id="xdx_90C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_pn5n6_c20210101__20211231__us-gaap--AwardTypeAxis__custom--StockOptionsMember_zTPy4yV4Qtlf" title="Intrinsic value of options value exercised">1.3</span>
million, respectively. The aggregate intrinsic value of outstanding options at December 31, 2022 and 2021 was approximately $<span id="xdx_901_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_iI_pn5n6_c20221231__us-gaap--AwardTypeAxis__custom--StockOptionsMember_zRM4heEiYrse" title="Aggregate intrinsic value of outstanding options">0.8</span> million
and $<span id="xdx_904_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_iI_pn5n6_c20211231__us-gaap--AwardTypeAxis__custom--StockOptionsMember_zB6uVAabqK9e" title="Aggregate intrinsic value of outstanding options">7.6</span> million, respectively. As of December 31, 2022, there were no unvested options and no unrecognized stock-based compensation
expense related to options.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Restricted
Stock Units</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_894_eus-gaap--ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_zUCHLGJY8Ayh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
grant date fair value of RSUs granted is determined using the closing market price of the Company&#8217;s common stock on the grant date
with the associated compensation expense amortized over the vesting period of the awards. The following table sets forth the outstanding
RSUs and related activity for the years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zaWAWQdBhK0d" style="display: none">Schedule of Outstanding Restricted Stock Units and Related Activity</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Number of RSUs</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Grant Date Fair Value</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Unvested at December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iS_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zAcGCtZdl6K4" style="width: 16%; text-align: right" title="Number of Restricted Stock Units, Outstanding Beginning">522,500</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zfaraZnqnNIe" style="width: 16%; text-align: right" title="Weighted Average Grant Date Fair Value, Outstanding Beginning">10.49</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zyJeREGNgYUd" style="text-align: right" title="Number of Restricted Stock Units, Granted">1,217,500</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zdRW3eOeTJc6" style="text-align: right" title="Weighted Average Grant Date Fair Value, Granted">9.76</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Vested</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_iN_di_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zWGnePFfQHc5" style="text-align: right" title="Number of Restricted Stock Units, Vested">(438,502</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zVA8TI2EtO67" style="text-align: right" title="Weighted Average Grant Date Fair Value, Vested">10.10</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Forfeited/Cancelled</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_iN_di_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zWPzKyhi0tfg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Restricted Stock Units, Forfeited/Cancelled">(34,083</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z2vLdz6kWfQi" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Grant Date Fair Value, Forfeited/Cancelled">9.91</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Unvested at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iS_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zNfdlgokbHU6" style="text-align: right" title="Number of Restricted Stock Units, Outstanding Beginning">1,267,415</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z2qQgf9Zm1U7" style="text-align: right" title="Weighted Average Grant Date Fair Value, Outstanding Beginning">9.94</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z7uz8Xx1gkqf" style="text-align: right" title="Number of Restricted Stock Units, Granted">1,925,476</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z0SjFPXtRXh4" style="text-align: right" title="Weighted Average Grant Date Fair Value, Granted">5.66</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Vested</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_iN_di_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z3nQ9tx0OeBe" style="text-align: right" title="Number of Restricted Stock Units, Vested">(725,166</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zjFyOyYUs0Y2" style="text-align: right" title="Weighted Average Grant Date Fair Value, Vested">8.66</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Forfeited/Cancelled</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_iN_di_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zwsvr7Az7XU2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Restricted Stock Units, Forfeited/Cancelled">(41,000</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zhWA30WQpcU8" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Grant Date Fair Value, Forfeited/Cancelled">8.31</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Unvested at December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iE_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zGAPwCFupTf9" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Restricted Stock Units, Outstanding Ending">2,426,725</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zEopSoyFCzE8" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Grant Date Fair Value, Outstanding Ending">7.06</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A7_zd6QdLoMZ3sj" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2022, there was $<span id="xdx_900_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_iI_pn5n6_c20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zjXQepSdwIS3" title="Unrecognized stock-based compensation">14.7</span> million of unrecognized stock-based compensation expense related to outstanding RSUs which is expected
to be recognized over a weighted-average period of <span id="xdx_907_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_dtY_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zSL5pq6lAePj" title="Unrecognized stock-based compensation recognition period">2.2</span> years.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Warrants</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has issued warrants related to financings, acquisitions and as compensation to third parties for services provided. The Company
estimates the fair value of issued warrants on the date of issuance as determined using a Black-Scholes pricing model. The Company amortizes
the fair value of issued warrants using a vesting schedule based on the terms and conditions of each warrant if granted for services.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_891_eus-gaap--ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock_znvjaERswV0h" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes warrant activity during the years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B5_zLyr3BCph05c" style="display: none">Schedule of Warrant Activity</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Number of Warrants</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Exercise Price</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Fair Value</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Remaining Contractual Life (Years)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 44%">Outstanding at December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iS_c20210101__20211231_z1UryfnyDDHe" style="width: 10%; text-align: right" title="Number of Warrants Outstanding, Beginning">70,000</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_980_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zaIJa6UuoTC3" style="width: 10%; text-align: right" title="Weighted Average Exercise Price, Beginning">1.83</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_iS_pid_c20210101__20211231_zYf1Ny4dm4R" style="width: 10%; text-align: right" title="Weighted Average fair value, Beginning">5.21</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right"><span id="xdx_90E_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1_dtY_c20210101__20211231_zlUOD9z4uvy8" title="Weighted-average Remaining Contractual Life (Years) Outstanding">3.3</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_c20210101__20211231_zTriLyHQRKJ6" style="text-align: right" title="Number of Warrants Outstanding, Granted">456,281</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zt5kJf6iG9H6" style="text-align: right" title="Weighted Average Exercise Price, Granted">9.13</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zOVk1LlTH5Q4" style="text-align: right" title="Weighted Average Fair Value, Granted">3.83</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations_iN_di_c20210101__20211231_zKCoV4BNwDWk" style="text-align: right" title="Number of Warrants Outstanding, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1358">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zA9x2zWsaZY6" style="text-align: right" title="Weighted Average Exercise Price, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1360">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zoN2jHgEnoOa" style="text-align: right" title="Weighted Average Fair Value, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1362">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Forfeited/Cancelled</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures_c20210101__20211231_zzD4fMIdEfud" style="text-align: right" title="Number of Warrants Outstanding, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1364">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zATzHGCLpXYd" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1366">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_pid_c20210101__20211231_z6w7ir4SrMke" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1368">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_iN_di_c20210101__20211231_zaQ7Z4fRw3w1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Warrants Outstanding, Exercised"><span style="-sec-ix-hidden: xdx2ixbrl1370">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_98F_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zL6mmTDP5Rvd" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised"><span style="-sec-ix-hidden: xdx2ixbrl1372">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_983_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zMoVbjvpY4Cl" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised"><span style="-sec-ix-hidden: xdx2ixbrl1374">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Outstanding at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iS_c20220101__20221231_z4LNwiJ8Hlrh" style="text-align: right" title="Number of Warrants Outstanding, Beginning">526,281</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98A_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20220101__20221231_zTlAoB4JXGkj" style="text-align: right" title="Weighted Average Exercise Price, Beginning">8.15</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_989_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_iS_pid_c20220101__20221231_z3UOFMYcplia" style="text-align: right" title="Weighted Average fair value, Beginning">4.01</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span id="xdx_90F_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_dtY_c20210101__20211231_zAwyRqRKgR9b" title="Weighted-average Remaining Contractual Life (Years) Outstanding">4.7</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Issued for adjustments to contingent purchase consideration</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_ecustom--ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration_c20220101__20221231_zuDdzMzeQzbj" style="text-align: right" title="Number of Warrants Outstanding, Issued">8,719</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_ecustom--IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zsY7bVN439Fh" style="text-align: right" title="Weighted Average Exercise Price, Issued">9.13</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zSf2rOkqqgw8" style="text-align: right" title="Weighted Average Fair Value, Issued">1.88</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_c20220101__20221231_zXZwj3pdTic6" style="text-align: right" title="Number of Warrants Outstanding, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1390">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zucEClSrwDZd" style="text-align: right" title="Weighted Average Exercise Price, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1392">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zB5RSHYLSyZ1" style="text-align: right" title="Weighted Average Fair Value, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1394">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations_iN_di_c20220101__20221231_z5GxYKmAJ3P8" style="text-align: right" title="Number of Warrants Outstanding, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1396">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zYiZHrKY7SM7" style="text-align: right" title="Weighted Average Exercise Price, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1398">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zOKkDIjzHOS5" style="text-align: right" title="Weighted Average Fair Value, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1400">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Forfeited/Cancelled</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures_c20220101__20221231_z2qdU3avusLj" style="text-align: right" title="Number of Warrants Outstanding, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1402">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zBNUiX9IRRs7" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1404">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zP1dJTyFXN07" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1406">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_iN_di_c20220101__20221231_zWITLqpQoaUi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Warrants Outstanding, Exercised">(50,000</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_98B_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_z0jqMG6hDjs2" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised">2.00</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_98C_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zfQ85BjLHTO2" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised">1.22</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Outstanding at December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iE_c20220101__20221231_zoSCXGIeCqCi" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Warrants Outstanding, Ending">485,000</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_980_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice_iE_pid_c20220101__20221231_zdDYQh9v5Exl" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Exercise Price, Ending">8.81</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_988_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231_zZQVy6ukPVG1" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Fair Value, Ending">2.43</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; text-align: right"><span id="xdx_909_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_dtY_c20220101__20221231_zt4bPrPcYrsk" title="Weighted-average Remaining Contractual Life (Years) Outstanding">4.0</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A2_zD857AmVDPJa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
intrinsic value of warrants exercised during the years ended December 31, 2022 and 2021 was $<span id="xdx_903_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue_pn5n6_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_zKcuEj9Z3v95" title="Intrinsic value of warrants exercised">0.3</span> million and $<span id="xdx_907_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue_pn5n6_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_z6UKO9NLNo52" title="Intrinsic value of warrants exercised">0.0</span> million, respectively.
The aggregate intrinsic value of outstanding warrants at December 31, 2022 was approximately $<span id="xdx_901_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_iI_c20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_z4Hdz0hxQvMc" title="Aggregate intrinsic value of options outstanding">22,000</span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_901_ecustom--ClassOfWarrantExercisable_iI_c20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_zxNAS9XntZP7" title="Warrants exercisable">20,000</span>
warrants are exercisable at December 31, 2022. As discussed in Note 3 and Note 4, approximately <span id="xdx_90D_eus-gaap--ClassOfWarrantOrRightOutstanding_iI_c20221231_zFp5qpa3U77l" title="Warrants purchase">456,000</span> warrants to purchase shares of
the Company&#8217;s common stock were issued in connection with the acquisition of ACI and IdMo. The ability to exercise the warrants
is contingent upon the achievement of certain development and revenue milestones on or before January 1, 2027. There was no unrecognized
stock-based compensation expense related to warrants.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">See
Note 5 for additional information regarding the fair value calculation of the warrants issued during the year ended December 31, 2021.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Stock
Issued for Services</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has issued restricted stock to third parties for services provided. The grant date fair value of the restricted stock granted
is determined using the closing market price of the Company&#8217;s common stock on the grant date with the associated compensation expense
amortized over the vesting period of the stock awards. The Company issued <span id="xdx_901_eus-gaap--StockIssuedDuringPeriodSharesIssuedForServices_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ThirdPartiesMember__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zuQq7uj4WyHf" title="Number of shares issued for services">0</span> and <span id="xdx_902_eus-gaap--StockIssuedDuringPeriodSharesIssuedForServices_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ThirdPartiesMember__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zfmodYMO9Vqg" title="Number of shares issued for services">5,548</span> shares of restricted stock for services during
the years ended December 31, 2022 and 2021, respectively, and there was no unrecognized stock-based compensation expense related to restricted
stock issued.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Stock-Based
Compensation Expense</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_891_eus-gaap--ScheduleOfShareBasedCompensationActivityTableTextBlock_zs6xlJlFwo7b" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company recognized stock-based compensation expense related to the types of awards discussed above as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zXucSKiIchDl" style="display: none">Schedule of Recognized
Stock-based Compensation Expense</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20220101__20221231_zVCYSlFIIuG7" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20210101__20211231_zpsBsMggoHH1" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Years Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--EmployeeStockOptionMember_zBxGRGPK80W2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; padding-left: 0pt">Options</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">78,115</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">292,754</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zjYcvU2Apzqj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Restricted stock units</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">7,465,108</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,164,750</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--StockCompensationPlanMember_zHKzJbSWcZ49" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Stock</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1444">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">51,900</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--AllocatedShareBasedCompensationExpense_zCqX0PaJtA7a" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt; text-indent: 10pt; padding-left: 0pt">Total stock-based compensation expense</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">7,543,223</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">5,509,404</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A0_z7uQNSaBqP8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="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_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 share-based payment arrangement.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock</td>
</tr>
<tr>
<td style="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>30
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367629836000">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Taxes</a></td>
<td class="text"><p id="xdx_801_eus-gaap--IncomeTaxDisclosureTextBlock_z5M2F2Ur3Rlg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
12 &#8211; <span id="xdx_827_zB3eqQ8LtrBf">Income Taxes</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89B_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_zKoRoXiLLDWe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
components of the provision for income taxes consists of the following for the years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BE_zTRMQlv4Nzha" style="display: none">Schedule
of Components Income Tax Provision</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20220101__20221231_zMfuosEX12H9" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49B_20210101__20211231_zXrSkdX7bf1a" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Year Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_iB_zItKkEmAOVHf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Current:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--CurrentFederalTaxExpenseBenefit_i01_maCFSALzO40_zglWyXf1pJHf" style="vertical-align: bottom; background-color: White">
    <td style="width: 64%; text-indent: 10pt; padding-left: 0pt">Federal</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">563,821</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">6,092,730</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_i01_maCFSALzO40_z3AACDdV9osl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">State</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(266,248</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">886,173</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--CurrentFederalStateAndLocalTaxExpenseBenefit_i01T_mtCFSALzO40_maITEBzvit_zfelvOywAXs2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total current</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">297,573</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">6,978,903</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_iB_z1ZXQed8MgS4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Deferred:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--DeferredFederalIncomeTaxExpenseBenefit_i01_maDFSALzrPD_zphTuVY7To89" style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 10pt; padding-left: 0pt">Federal</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(3,945,090</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,394,686</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_i01_maDFSALzrPD_zBtTtG9NtUzl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">State</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(961,468</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">603,642</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--DeferredFederalStateAndLocalTaxExpenseBenefit_i01T_mtDFSALzrPD_maITEBzvit_zbkM8D9mxFNl" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total deferred</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(4,906,558</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,998,328</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--IncomeTaxExpenseBenefit_iT_mtITEBzvit_zGexWbgHqUKa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Total income tax (benefit) expense</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(4,608,985</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">8,977,231</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A5_zEu5SrToj2Jf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89F_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zvGIDloIP8f2" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">A
reconciliation of income tax expense at the statutory federal income tax rate and income taxes as reflected in the financial statements
is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_z1pUq1ZZtIE5" style="display: none">Schedule
of Benefit from Income Taxes and Effective Tax Rates</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20220101__20221231_zo6S7rTZAeHc" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49B_20210101__20211231_zDtONAgXNDDb" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Year Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_dp_uPure_zhCcAQmNpf4f" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left; padding-left: 0pt">Federal income tax expense at statutory rate</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">21.0</td><td style="width: 1%; text-align: left">%</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">21.0</td><td style="width: 1%; text-align: left">%</td></tr>
  <tr id="xdx_408_eus-gaap--EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_dp_uPure_zMkOhSV2TCFk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">State income tax expense, net of federal tax benefit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4.8</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3.9</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_403_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract_iB_zpxYfuAK1Yuf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Permanent differences:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_ecustom--EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction_i01_dp_uPure_zltzT5wCqclg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">- Foreign derived intangible income deduction</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1.4</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-3.5</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_408_eus-gaap--EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent_i01_dp_uPure_z43W7ezcyEC2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">- Stock based compensation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-3.6</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.2</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40E_ecustom--EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement_i01_dp_uPure_zq1YzxyBEGM8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">- Contingent consideration remeasurement</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8.8</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.0</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_404_ecustom--EffectiveIncomeTaxRateReconciliationGoodwillImpairment_i01_dp_uPure_zD3imPA8Za5j" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">- Goodwill impairment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-17.1</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.0</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_i01_dp_uPure_zOmNw1RC5HSg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">- Other permanent differences</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-0.6</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.3</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40C_eus-gaap--EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment_iN_dpi_uPure_z1k6PHrC4Jlj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Research and development credits</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">11.1</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-2.6</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40B_ecustom--EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance_dp_uPure_znriT6IQMKBk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Change in uncertain tax positions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-2.1</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1.4</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40F_eus-gaap--EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_dp_uPure_zjJrPFNgEeSj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Change in valuation allowance</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.0</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.0</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherAdjustments_dp_uPure_zS8YrT1MUdQ" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Other</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">0.8</td><td style="padding-bottom: 1.5pt; text-align: left">%</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-1.0</td><td style="padding-bottom: 1.5pt; text-align: left">%</td></tr>
  <tr id="xdx_40F_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_dp_uPure_zXuqfck6KiV6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Effective income tax rate</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">24.5</td><td style="padding-bottom: 2.5pt; text-align: left">%</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">19.7</td><td style="padding-bottom: 2.5pt; text-align: left">%</td></tr>
  </table>

<p id="xdx_8A4_znpxvfXctR04" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




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

<p id="xdx_896_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_zAB1TlhM3wk3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net
deferred tax liabilities consist of the following components as of December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BA_z7Dfq5a2jRta" style="display: none">Schedule
of Deferred Tax Assets</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_493_20221231_z2gSbIutjuYg" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_497_20211231_zz3TgbMP9qFf" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--DeferredTaxAssetsGrossAbstract_iB_z1N2A1soq1N6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Deferred tax assets:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_i01I_maDTAGzwm0_zASVEMrzwZp" style="vertical-align: bottom; background-color: White">
    <td style="width: 64%; text-align: left; text-indent: 20pt; padding-left: 0pt">Accrued liabilities</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">98,141</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1528">-</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_i01I_maDTAGzwm0_zLa8qYxc8Ky8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Reserves and allowances</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">765,004</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">166,050</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits_i01I_maDTAGzwm0_zrLS0S8rsvZg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Deferred compensation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">566,076</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">393,871</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--DeferredTaxAssetsInProcessResearchAndDevelopment_i01I_maDTAGzwm0_zCKLBeVcGQyi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Research and development credits</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,460,159</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1537">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_ecustom--DeferredTaxAssetsLeaseLiability_i01I_maDTAGzwm0_zpheh1OWtpu5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Lease liability</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">85,899</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1540">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_ecustom--DeferredTaxAssetsUniformCapitalization_i01I_maDTAGzwm0_zH8nlHNsfK67" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt">UNICAP</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">168,936</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1543">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--DeferredTaxAssetsGross_i01TI_mtDTAGzwm0_maDTAOzex8_zvK9k46gnL36" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total deferred tax assets</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">5,144,215</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">559,921</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--DeferredTaxLiabilitiesAbstract_iB_zEj7ajrmWG8j" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Deferred tax liabilities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--DeferredTaxLiabilitiesPropertyPlantAndEquipment_i01NI_di_maDITLzLIF_zR2hg1rMK0D8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Property and equipment, net</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(609,261</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(477,542</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_404_eus-gaap--DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_i01NI_di_maDITLzLIF_zwAuSyLfWLWi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Intangibles, net</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(6,608,914</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(6,743,972</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--DeferredTaxLiabilitiesPrepaidExpenses_i01NI_di_maDITLzLIF_zs2ZvHpL9DQ7" style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 20pt; padding-left: 0pt">Prepaids</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(156,053</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(560,093</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_403_ecustom--DeferredTaxLiabilitiesRightOfUseAsset_i01I_maDITLzLIF_zBYSAS3xGyOg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Right of use asset</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(91,873</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1561">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--DeferredTaxLiabilitiesOtherComprehensiveIncome_i01NI_di_maDITLzLIF_zZ6iFpTVjfaa" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Other comprehensive income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(96,101</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1564">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--DeferredTaxLiabilitiesOther_i01NI_di_maDITLzLIF_zIuQyMqsui3c" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt">Other</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1566">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(6,758</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_40D_eus-gaap--DeferredIncomeTaxLiabilities_i01NTI_di_mtDITLzLIF_msDTAOzex8_zPHFnstnzBP9" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total deferred tax liabilities</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(7,562,202</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(7,788,365</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_409_ecustom--NetDeferredTaxLiabilities_i01I_mtDTAOzex8_maDTANzqQW_z268iDeeNNPd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Net deferred tax (liabilities)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(2,417,987</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(7,228,444</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_400_eus-gaap--DeferredTaxAssetsValuationAllowance_iI_msDTANzqQW_z6QCumMw7iTl" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Less valuation allowance</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1575">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1576">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_di_mtDTANzqQW_zskQxiyPiP5b" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Net deferred tax (liabilities)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(2,417,987</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(7,228,444</td><td style="padding-bottom: 2.5pt; text-align: left">)</td></tr>
  </table>

<p id="xdx_8A6_zVrLo5Ore0ba" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">At
December 31, 2022, the Company had <span id="xdx_90D_eus-gaap--OperatingLossCarryforwards_iI_do_c20221231_zjZR6FDiifuj" title="Net operating loss carry-forwards">no</span> federal net operating loss carryforwards and <span id="xdx_90A_eus-gaap--DeferredTaxAssetsInProcessResearchAndDevelopment_iI_dxL_c20211231_zFrtTijyaVz1" title="Research and development credit carry forwards::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1583">no</span></span> federal research and development credit carryforwards.
At December 31, 2022, the Company had <span id="xdx_903_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal_iI_dxL_c20221231_zvNPH4W5Wzol" title="State net operating loss carryforwards::XDX::-"><span style="-sec-ix-hidden: xdx2ixbrl1585">no</span></span> state net operating loss carryforwards and $<span id="xdx_90A_eus-gaap--DeferredTaxAssetsTaxCreditCarryforwards_iI_c20221231_z80NrwhkpAh8" title="State research and development credit carryforwards">288,292</span> of state research and development credit
carryforwards. If unused, the state research credit carryforward will expire in 2036.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">ASC
Topic 740-10-05 requires that the impact of a tax position be recognized in the financial statements if that position is more likely
than not of being sustained on audit, based on the technical merits of the position. Our unrecognized tax benefit balances included $<span id="xdx_907_eus-gaap--UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_iI_c20221231_zwGl7Rf3mAp3" title="Unrecognized tax benefits that would impact effective tax rate">1,469,577</span>
at December 31, 2022 and $<span id="xdx_904_eus-gaap--UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_iI_c20211231_ztuDLdwiFg39" title="Unrecognized tax benefits that would impact effective tax rate">1,067,853</span> at December 31, 2021 of tax positions that, if recognized, would impact our effective tax rate. The
Company expects no material changes to the liability for unrecognized tax benefits in the next 12 months. Interest and penalties associated
with uncertain tax positions are recorded as a component of income tax expense. A reconciliation of the beginning and ending amount of
unrecognized benefits is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">&#160;</span></p>

<p id="xdx_895_eus-gaap--ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_zrqHktq4Hxbc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B5_zTVlaz4tFVT9" style="display: none">Schedule
of Unrecognized Tax Benefits</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Unrecognized tax benefits at the beginning of the year</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_985_eus-gaap--UnrecognizedTaxBenefits_iS_c20220101__20221231_zEsfTxOY0DAj" style="width: 14%; text-align: right" title="Unrecognized tax benefits at the beginning of the year">1,067,853</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--UnrecognizedTaxBenefits_iS_c20210101__20211231_zoVcKY5Nt9t9" style="width: 14%; text-align: right" title="Unrecognized tax benefits at the beginning of the year">447,831</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Gross increases - current year tax positions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_c20220101__20221231_zksi0q1t2Svf" style="text-align: right" title="Gross increases- current year tax positions">1,045,590</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_c20210101__20211231_znCPLez0B4a2" style="text-align: right" title="Gross increases - current year tax positions">770,069</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Gross increases - prior year tax positions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_c20220101__20221231_zNtX4s5UWUK3" style="text-align: right" title="Gross increases- prior year tax positions">34,035</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_c20210101__20211231_zamsyOPTI7vf" style="text-align: right" title="Gross increases - prior year tax positions"><span style="-sec-ix-hidden: xdx2ixbrl1605">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Gross decreases - prior year tax positions</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_iN_di_c20220101__20221231_z0MvwCAHaza7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gross decreases - prior year tax positions">(677,901</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_iN_di_c20210101__20211231_zAREE8LQLtUa" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gross decreases- prior year tax positions">(150,047</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Unrecognized tax benefits at end of year</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_980_eus-gaap--UnrecognizedTaxBenefits_iE_c20220101__20221231_zQcqtjFCvGwk" style="border-bottom: Black 2.5pt double; text-align: right" title="Unrecognized tax benefits at end of year">1,469,577</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98B_eus-gaap--UnrecognizedTaxBenefits_iE_c20210101__20211231_zq46nvqtlKRf" style="border-bottom: Black 2.5pt double; text-align: right" title="Unrecognized tax benefits at end of year">1,067,853</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Interest and penalties in year-end balance</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_986_eus-gaap--UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued_iE_c20220101__20221231_zh2IVKFrFj76" style="border-bottom: Black 2.5pt double; text-align: right" title="Interest and penalties in year-end balance">34,035</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98C_eus-gaap--UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued_iE_c20210101__20211231_zfFsMs88rjX8" style="border-bottom: Black 2.5pt double; text-align: right" title="Interest and penalities in year- end balance"><span style="-sec-ix-hidden: xdx2ixbrl1617">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A8_zPZ1TGdzNgei" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company is subject to taxation in the United States and other state jurisdictions. The tax years from December 31, 2019 through December
31, 2022 remain open to examination for federal income tax purposes and by the other major taxing jurisdictions to which the Company
is subject. The Company is not currently under examination by any taxing authority.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32857-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330215-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.5.Q1)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32705-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 270<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6424409&amp;loc=d3e44925-109338<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -URI https://asc.fasb.org/topic&amp;trid=2144680<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6424122&amp;loc=d3e41874-109331<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>31
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367628507360">
<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">12 Months Ended</th>
</tr>
<tr><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_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text"><p id="xdx_804_eus-gaap--CommitmentsAndContingenciesDisclosureTextBlock_zYd4sQUQlrse" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
13 &#8211; <span id="xdx_820_zhvidlkbNctl">Commitments and Contingencies</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Lease
Obligations</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company leases office space under a non-cancellable operating lease and leases cancellable with one month notice. The Company expenses
the cancelable leases in the period incurred in accordance with the practical expedient elected. As such, one lease makes up the entirety
of the right-of-use asset and lease liability disclosed.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89B_eus-gaap--LeaseCostTableTextBlock_zlQL63nnZNWh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For
the year ended December 31, 2022, components of lease expense are summarized as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B5_z7huRpqAonJh" style="display: none">Schedule
of Lease Expense</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_494_20220101__20221231_zTcAfbvmNrI2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Year Ended December, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--OperatingLeaseCost_maLCz2lp_zMXzVg0SZvx9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 76%; text-align: left">Operating lease costs</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 18%; text-align: right">346,349</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--ShortTermLeaseCost_maLCz2lp_zMjLJbrcEqcd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Short-term lease costs</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">384,902</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LeaseCost_iT_mtLCz2lp_zGCbsXJUdfU2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Total lease costs</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">731,251</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A6_zv8IPmTVrQba" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Short-term
lease costs under month-to-month lease agreements are paid to related parties.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_891_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_zSWWHFoYGwvk" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2022, the maturities of the Company&#8217;s lease liabilities are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zq2nGaCFCop3" style="display: none">Schedule
of Maturities on Company Lease Liabilities</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_493_20221231_z4QbVlVKyTsa" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Year Ending<br/>
 December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_maLOLLPz8za_zycEIygeanf6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 78%; text-align: left; text-indent: 10pt; padding-left: 0pt">2023</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 18%; text-align: right">303,059</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_maLOLLPz8za_zX6di43brZH4" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">50,773</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_maLOLLPz8za_zGy967EVcyUc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1635">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFour_iI_maLOLLPz8za_zm8H47QkU1Y2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">2026</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1637">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFive_iI_maLOLLPz8za_z7a4Mm5xQUte" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">2027</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1639">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_iI_maLOLLPz8za_zzK7zvgiQnw" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Thereafter</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1641">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_mtLOLLPz8za_zwo0TqAU3Evf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Total lease payments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">353,832</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iI_zb5o7ZqzxmL2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Less: imputed interest</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">5,915</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--OperatingLeaseLiability_iI_zf1fF5vvsNHk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Present value of operating lease liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">347,917</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--OperatingLeaseLiabilityCurrent_iI_z1WsKphfMc6f" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Less: current portion</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">297,209</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_zLHpE3gaIC77" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Long-term portion</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">50,708</td><td style="text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8AF_zFxdQ6yQWrI3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p id="xdx_89C_ecustom--ScheduleOfOperatingLeaseTableTextBlock_zMRwjQM566vb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Other
information related to operating leases was as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zix7S5fGXOS5" style="display: none">Schedule
of Other Information Related to Operating Lease</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_492_20220101__20221231_zEqQ9PdyNeo7" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><p style="margin-top: 0pt; margin-bottom: 0pt">Year Ended</p>
                                                                                <p style="margin-top: 0pt; margin-bottom: 0pt">December 31, 2022</p></td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--OperatingLeasePayments_zoRrBGesqn98" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: left">Cash paid for operating leases included in operating cash flows</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">700,821</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Remaining lease term of operating leases</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90B_eus-gaap--OperatingLeaseWeightedAverageRemainingLeaseTerm1_iI_dtY_c20221231_zCNZF9oIpUY2" title="Remaining lease term of operating leases">1</span> year </span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Discount rate of operating leases</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--OperatingLeaseWeightedAverageDiscountRatePercent_iI_pid_dp_uPure_c20221231_ziIXv7lI6Cui" style="text-align: right" title="Discount rate of operating leases">3.1</td><td style="text-align: left">%</td></tr>
  </table>

<p id="xdx_8AC_z6JWzAgnjTNh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Litigation</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Liabilities
for loss contingencies arising from claims, assessments, litigation, fines, and penalties and other sources are recorded when it is probable
that a liability has been incurred and the amount can be reasonably estimated. Legal costs incurred in connection with loss contingencies
are expensed as incurred.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company is a defendant in two class action claims and three derivative
actions claiming that the Company promulgated false and misleading press releases to increase the price of our stock to improperly
benefit the officers and directors of the Company. The plaintiffs demand compensatory damages sustained as a result of the Company&#8217;s
alleged wrongdoing in an amount to be proven at trial. The Company believes these lawsuits are without merit and intends to defend the
cases vigorously. The Company is unable to estimate a range of loss, if any, that could result were there to be an adverse final decision
in these cases. As of the date of this report, the Company does not believe it is probable that these cases will result in an unfavorable
outcome; however, if an unfavorable outcome were to occur in these cases, it is possible that the impact could be material to the Company&#8217;s
results of operations in the period(s) in which any such outcome becomes probable and estimable.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="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_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 commitments and 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -URI https://asc.fasb.org/topic&amp;trid=2144648<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 440<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6491277&amp;loc=d3e6429-115629<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -URI https://asc.fasb.org/topic&amp;trid=2127136<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>32
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367626113888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share Repurchase Program<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock', window );">Share Repurchase Program</a></td>
<td class="text"><p id="xdx_80E_eus-gaap--StockholdersEquityNoteDisclosureTextBlock_zLf7vPOFOCj6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
14 &#8211; <span id="xdx_82A_zts3yGwQJlec">Share Repurchase Program</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
March 2022, the Company&#8217;s board of directors authorized a share repurchase program that would allow the Company to repurchase up
to $<span id="xdx_90E_eus-gaap--StockRepurchaseProgramAuthorizedAmount1_iI_pn5n6_c20220331_zR3I09Nu3Hie" title="Stock repurchase program authorized amount">30.0</span> million of CODX common stock. The repurchase program does not obligate the Company to acquire any particular number of common
shares, and the repurchase program may be suspended or discontinued at any time at the Company&#8217;s discretion. The timing and amount
of any share repurchases under the share repurchase program will be determined by Co-Diagnostics&#8217; management at its discretion
based on ongoing assessments of the capital needs of the business, the market price of the Company&#8217;s common stock, corporate and
regulatory requirements, and general market conditions.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For
accounting purposes, common stock repurchased under the stock repurchase program is recorded based upon the transaction date of the applicable
trade. Such repurchased shares are held in treasury and are presented using the cost method. These shares are not retired and are considered
issued but not outstanding. The following table shows the changes in treasury stock for the periods presented:</span></p>

<p id="xdx_898_ecustom--ScheduleOfTreasuryStockTableTextBlock_zYQspkJigVXa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B0_zH3E0U3QxiLa" style="display: none">Schedule
of Treasury Stock</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Year Ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Balance, beginning of period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--TreasuryStockShares_iS_pid_d0_c20220101__20221231_zeHFyhMipQ02" style="text-align: right" title="Treasury stock, Beginning Balance">-</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 76%; text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Repurchases of common stock</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">&#160;</td><td id="xdx_985_ecustom--RepurchasesOfCommonStock_c20220101__20221231_zarCr1EhmVM6" style="border-bottom: Black 1.5pt solid; width: 20%; text-align: right" title="Repurchases of common stock">3,881,658</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt; text-indent: 10pt; padding-left: 0pt">Balance, end of period</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--TreasuryStockShares_iE_pid_c20220101__20221231_zOIbxlcTu7n7" style="border-bottom: Black 2.5pt double; text-align: right" title="Treasury stock, Ending Balance">3,881,658</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p id="xdx_8A2_zjwtpL91KVA4" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></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_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EquityAbstract</td>
</tr>
<tr>
<td style="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_StockholdersEquityNoteDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -URI https://asc.fasb.org/topic&amp;trid=2208762<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496171-112644<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496171-112644<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496189-112644<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496189-112644<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496171-112644<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496189-112644<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 16<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496180-112644<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(e)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126731327&amp;loc=SL126733271-114008<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>33
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367630847456">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Subsequent Events<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_SubsequentEventsAbstract', window );"><strong>Subsequent Events [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">Subsequent Events</a></td>
<td class="text"><p id="xdx_80A_eus-gaap--SubsequentEventsTextBlock_zHAywUvHV6w6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note
15 &#8211; <span id="xdx_82F_zG4g5n7yUEK7">Subsequent Events</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">None.</span></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_SubsequentEventsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SubsequentEventsAbstract</td>
</tr>
<tr>
<td style="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_SubsequentEventsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -URI https://asc.fasb.org/topic&amp;trid=2122774<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6842918&amp;loc=SL6314017-165662<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="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>34
<FILENAME>R22.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367632612992">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and Cash Equivalents</a></td>
<td class="text"><p id="xdx_843_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_zlP51pzp1Fm8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_z7t6FF0tCHfa">Cash
and Cash Equivalents</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cash
and cash equivalents consist of cash on hand, money market funds and highly liquid investments with an original maturity date of 90 days
or less from the date of purchase. The fair value of cash equivalents approximated their carrying value as of December 31, 2022 and December
31, 2021. <span style="background-color: white">The Company has its cash and cash equivalents with a large creditworthy financial institution
and the balance exceeded federally insured limits. The Company has not experienced any losses in such accounts, and management believes
the Company is not exposed to any significant credit risk on cash and cash equivalents.</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></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_MarketableSecuritiesPolicy', window );">Marketable Investment Securities</a></td>
<td class="text"><p id="xdx_84A_eus-gaap--MarketableSecuritiesPolicy_zukDsTCDUWU" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_867_zAnAwzlnRVI1">Marketable
Investment Securities</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company&#8217;s marketable investment securities are comprised of investments in certificates of deposit and U.S. Treasury bills and
notes. The Company designates investments in debt securities as available-for-sale. Available-for-sale debt securities with original
maturities of three months or less from the date of purchase are classified within cash and cash equivalents. Available-for-sale debt
securities with original maturities longer than three months are available to fund current operations and are classified as marketable
investment securities, within current assets on the consolidated balance sheets. The Company may sell these securities at any time for
use in its current operations or for other purposes, even prior to maturity. Available-for-sale debt securities are reported at fair
value with the related unrealized gains and losses included in accumulated other comprehensive income (loss), a component of stockholders&#8217;
equity, net of tax. Realized gains and losses on the sale of marketable securities are determined using the average cost method on a
first-in, first-out basis and recorded in total other income (expense), net in the condensed consolidated statements of operations and
comprehensive income.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
available-for-sale debt securities are subject to a periodic impairment review. For investments in an unrealized loss position, the Company
writes down the amortized cost basis of the investment if it is more likely than not that the Company will be required or will intend
to sell the investment before recovery of its amortized cost basis. For investments not likely to be sold before recovery of the amortized
cost basis, the Company determines whether a credit loss exists by considering information about the collectability of the instrument,
current market conditions, and reasonable and supportable forecasts of economic conditions. The Company recognizes an allowance for credit
losses up to the amount of the unrealized loss when appropriate. Allowances for credit losses and write-downs are recognized in total
other income (expense), net, and unrealized losses not related to credit losses are recognized in accumulated other comprehensive income
(loss). There are no allowances for credit losses recorded for the periods presented.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_TradeAndOtherAccountsReceivablePolicy', window );">Accounts Receivable</a></td>
<td class="text"><p id="xdx_845_eus-gaap--TradeAndOtherAccountsReceivablePolicy_zLXd2b4tq6wk" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_863_zLioYMsEtqb2">Accounts
Receivable</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Trade
accounts receivable are recorded at the invoiced amount (net of allowance) and do not bear interest. The Company maintains an allowance
for doubtful accounts for amounts the Company does not expect to collect. In establishing the required allowance, management considers
historical losses, current market condition, customers&#8217; financial condition, the age of receivables, and current payment patterns.
Account balances are written off against the allowance once the receivable is deemed uncollectible. Recoveries of trade receivables previously
written off are recorded when collected. At December 31, 2022 total accounts receivable was $<span id="xdx_90F_eus-gaap--AccountsReceivableGrossCurrent_iI_c20221231_zDlFiuwp9ZOi" title="Accounts receivable">6,552,249</span> with an allowance for uncollectable
accounts of $<span id="xdx_906_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iI_c20221231_zy6Vob70v6e3" title="Doubtful accounts">3,098,526</span> resulting in a net amount of $<span id="xdx_902_eus-gaap--AccountsReceivableNetCurrent_iI_c20221231_zMblppMPrhvh" title="Accounts receivable, net">3,453,723</span>. At December 31, 2021 total accounts receivable was $<span id="xdx_90F_eus-gaap--AccountsReceivableGrossCurrent_iI_c20211231_znnRFuR6YZY5" title="Accounts receivable, before allowance for credit loss, current">21,508,779</span> with an
allowance for uncollectable accounts of $<span id="xdx_90D_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iI_c20211231_zSFCPnJq6X0e" title="Uncollectable accounts">669,597</span> resulting in a net amount of $<span id="xdx_902_eus-gaap--AccountsReceivableNetCurrent_iI_c20211231_zvbwNuncuNT5" title="Accounts receivable, after allowance for credit loss, current">20,839,182</span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_EquityMethodInvestmentsPolicy', window );">Equity-Method Investments</a></td>
<td class="text"><p id="xdx_848_eus-gaap--EquityMethodInvestmentsPolicy_z779mF7Byma9" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_869_zjHgYxmsz3w1">Equity-Method
Investments</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Our
equity method investments are initially recorded at cost and are included in other long-term assets in the accompanying consolidated
balance sheet. We adjust the carrying value of our investment based on our share of the earnings or losses in the periods which they
are reported by the investee until the carrying amount is zero. The earnings or losses are included in other income (expense) in the
accompanying consolidated statements of operations.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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 );">Inventory</a></td>
<td class="text"><p id="xdx_846_eus-gaap--InventoryPolicyTextBlock_z3Sx5h6BggQ2" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_zcrLW38mY8hd">Inventory</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Inventory
is stated at the lower of cost or net-realizable value. Inventory cost is determined on a first-in first-out basis that approximates
average cost in accordance with ASC 330-10-30-12. At December 31, 2022, the Company had $<span id="xdx_90F_eus-gaap--InventoryNet_iI_c20221231_zWb5YMqnf5Kk" title="Inventory">5,310,473</span> in inventory, of which $<span id="xdx_90C_eus-gaap--InventoryFinishedGoods_iI_c20221231_zLhdzP0FuwUg" title="Inventory finished goods">1,327,264</span>
was finished goods and $<span id="xdx_901_eus-gaap--InventoryRawMaterials_iI_c20221231_ztNkX8lqiEel" title="Inventory raw materials">3,983,209</span> was raw materials. At December 31, 2021, the Company had $<span id="xdx_90D_eus-gaap--InventoryNet_iI_c20211231_z9PYMkZ2kXx9" title="Inventory, net">2,004,169</span> in inventory, of which $<span id="xdx_90A_eus-gaap--InventoryFinishedGoods_iI_c20211231_z5oFktUyrPL3" title="Inventory, finished goods, gross">983,088</span>
was finished goods and $<span id="xdx_90E_eus-gaap--InventoryRawMaterials_iI_c20211231_zZxgiGdF1P33" title="Inventory, raw materials, gross">1,021,081</span> was raw materials. The Company establishes reserves to reduce low-moving, obsolete, or unusable inventories
to their estimated useful or scrap values.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></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_GoodwillAndIntangibleAssetsPolicyTextBlock', window );">Goodwill and Intangible Assets</a></td>
<td class="text"><p id="xdx_845_eus-gaap--GoodwillAndIntangibleAssetsPolicyTextBlock_zGZ0PwmD2oC6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86C_z9WHLvmIr5Bi">Goodwill
and Intangible Assets</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill
represents the excess of the purchase price and related costs over the value assigned to net tangible and identifiable intangible assets
acquired in business combinations. Goodwill and indefinite-lived intangible assets are not amortized, but rather tested for impairment
at least annually on December 31, or more often if and when circumstances indicate that the carrying value may not be recoverable. Finite-lived
intangible assets are amortized over their useful lives.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">During
the year ended December 31, 2022, the Company recognized impairment charges related to goodwill of $<span id="xdx_908_eus-gaap--AssetImpairmentCharges_c20220101__20221231_zQytDLdiVcnd" title="Impairment charges">15,388,546</span>.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></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_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock', window );">Long-lived Assets</a></td>
<td class="text"><p id="xdx_849_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zCOmrbs4riQa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86F_zQ0J8hnPMV7l">Long-lived
Assets</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Long-lived
assets, such as property and equipment, are stated at cost less accumulated depreciation and amortization. Depreciation is provided using
the straight-line method over the estimated useful lives of the property, generally from three to five years. Repairs and maintenance
costs are expensed as incurred except when such repairs significantly add to the useful life or productive capacity of the asset, in
which case the repairs are capitalized.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company reviews its long-lived assets, including property and equipment, finite-lived intangible assets, and ROU assets, for impairment
whenever an event or change in facts and circumstances indicates that their carrying amounts may not be recoverable. Recoverability of
these assets is measured by comparing the carrying amount to the estimated undiscounted future cash flows expected to be generated. If
the carrying amount exceeds the undiscounted cash flows, the assets are determined to be impaired and an impairment charge is recognized
as the amount by which the carrying amount exceeds fair value.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_BusinessCombinationsPolicy', window );">Business Combinations</a></td>
<td class="text"><p id="xdx_841_eus-gaap--BusinessCombinationsPolicy_z2bYQtSSsvcc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86C_zZYdX3HXTcCf">Business
Combinations</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">We
estimate the fair value of assets acquired and liabilities assumed in a business combination. Goodwill as of the acquisition date is
measured as the excess of consideration transferred over the net of the acquisition date fair values of the assets acquired and the liabilities
assumed. Such valuations require management to make significant estimates and assumptions, especially with respect to intangible assets.
Management&#8217;s estimates of fair value are based upon assumptions believed to be reasonable, but which are inherently uncertain and
unpredictable, and as a result, actual results may differ from estimates.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_RevenueRecognitionPolicyTextBlock', window );">Revenue Recognition</a></td>
<td class="text"><p id="xdx_84E_eus-gaap--RevenueRecognitionPolicyTextBlock_zspZfJUhpuTi" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86B_zM0OA0duB2Y9">Revenue
Recognition</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company generates revenue from product sales and license sales. The Company recognizes revenue when all of the following criteria are
satisfied: (i) identification of the promised goods or services in the contract; (ii) determination of whether the promised goods or
services are performance obligations, including whether they are distinct in the context of the contract; (iii) measurement of the transaction
price, including the constraint on variable consideration; (iv) allocation of the transaction price to the performance obligations; and
(v) recognition of revenue when, or as the Company satisfies each performance obligation. Based on the criteria above, the Company typically
recognizes revenue upon delivery.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company constrains revenue by giving consideration to factors that could otherwise lead to a probable reversal of revenue. The Company
records any payments received from customers prior to the Company fulfilling its performance obligation(s) as deferred revenue.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_RevenueFromContractWithCustomerPolicyTextBlock', window );">Deferred Revenue</a></td>
<td class="text"><p id="xdx_84C_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zhtvVfpavpZj" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_zSBwbIjua8Vd">Deferred
Revenue</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Deferred
revenue primarily consists of payments received from customers prior to the Company fulfilling its performance obligation of providing
the product. When this occurs, the Company records a contract liability as deferred revenue. Deferred revenue is recognized as revenue
as the related performance obligations are satisfied.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>&#160;</b></span></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_ResearchAndDevelopmentExpensePolicy', window );">Research and Development</a></td>
<td class="text"><p id="xdx_84B_eus-gaap--ResearchAndDevelopmentExpensePolicy_zLp826ztHoOf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_zmNKFsgX7tG">Research
and Development</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Research
and development costs are expensed when incurred. The Company expensed $<span id="xdx_907_eus-gaap--ResearchAndDevelopmentExpense_c20220101__20221231_z5KwSywb3uU6" title="Research and development costs">17,438,098</span> and $<span id="xdx_901_eus-gaap--ResearchAndDevelopmentExpense_c20210101__20211231_zLzPeoUeLZ03" title="Research and development costs">14,961,916</span> of research and development costs
for the years ended December 31, 2022 and 2021, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Stock-based Compensation</a></td>
<td class="text"><p id="xdx_846_eus-gaap--ShareBasedCompensationOptionAndIncentivePlansPolicy_z7m0AvYS3jQb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86E_z8TVatW2ovHh">Stock-based
Compensation</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company has granted stock-based awards, including restricted stock, stock options, stock warrants and restricted stock units (&#8220;RSUs&#8221;),
to its employees, certain consultants and members of its board of directors. The Company records stock-based compensation based on the
grant date fair value of the awards and recognizes the fair value of those awards as expense using the straight-line method over the
requisite service period of the award. The Company estimates the grant date fair value of stock options using the Black-Scholes option-pricing
model. <span style="background-color: white">When an award is forfeited prior to the vesting date, the Company recognizes an adjustment
for the previously recognized expense in the period of the forfeiture.</span></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text"><p id="xdx_84A_eus-gaap--IncomeTaxPolicyTextBlock_zGX4cFrWPc92" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_867_zHBjpEbijS5f">Income
Taxes</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The
Company accounts for income taxes in accordance with the liability method of accounting for income taxes. Under this method, d</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">eferred
income tax assets and deferred income tax liabilities represent the tax effect of temporary differences between financial reporting and
tax reporting measured at enacted tax rates in effect for the year in which the differences are expected to reverse. The Company recognizes
only the impact of tax positions that, based on their technical merits, are more likely than not to be sustained upon an audit by the
taxing authority.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Valuation
allowances are provided when it is more-likely-than-not that some or all of the deferred income tax assets may not be realized. In assessing
the need for a valuation allowance, the Company has considered its historical levels of income, expectations of future taxable income
and ongoing tax planning strategies.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Developing
the provision for income taxes, including the effective tax rate and analysis of potential tax exposure items, if any, requires
significant judgment and expertise in federal and state income tax laws, regulations and strategies, including the determination of
deferred income tax assets and liabilities and any estimated valuation allowances deemed necessary to value deferred income tax
assets. Judgments and tax strategies are subject to audit by various taxing authorities. The Company has uncertain income tax
positions in the consolidated financial statements, and adverse determinations by these taxing authorities could have a material
adverse effect on the consolidated financial positions, result of operations, or cash flows.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_EarningsPerSharePolicyTextBlock', window );">Net Income per Share</a></td>
<td class="text"><p id="xdx_848_eus-gaap--EarningsPerSharePolicyTextBlock_zgWJMFuQGg6e" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86F_zrRS800yxWXc">Net
Income per Share</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Basic
net income or loss per common share is computed by dividing net income or loss applicable to common shareholders by the weighted average
number of shares outstanding during each period.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Diluted
net income or loss per share is computed by dividing net income or loss attributable to common stockholders by the weighted-average number
of shares of common stock outstanding during the period increased by common shares that could be issued upon conversion or exercise of
other outstanding securities to the extent those additional common shares would be dilutive. The dilutive effect of potentially dilutive
securities is reflected in diluted net income or loss per share by application of the treasury stock method. During periods when the
Company is in a net loss position, basic net loss per share is the same as diluted net loss per share as the effects of potentially dilutive
securities are anti-dilutive.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_ComprehensiveIncomePolicyPolicyTextBlock', window );">Comprehensive Income</a></td>
<td class="text"><p id="xdx_84B_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zF4isgvWnRa5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_860_zGYzV1hnQeW8">Comprehensive
Income</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">Comprehensive
income is comprised of unrealized gains and losses on marketable securities, net of income taxes.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_ConcentrationRiskCreditRisk', window );">Concentrations Risk and Significant Customers</a></td>
<td class="text"><p id="xdx_848_eus-gaap--ConcentrationRiskCreditRisk_zBLAQRjUUgI9" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_86F_zvToWzpxpSEc">Concentrations
Risk and Significant Customers</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The
Company had certain customers which are each responsible for generating <span id="xdx_904_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--CustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zkUQi3pu6Tv3" title="Concentration risk percentage"><span id="xdx_909_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--CustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zX6u0Rm6gmJh" title="Concentration risk percentage">10</span></span>% or more of the total revenue for the years ended December
31, 2022 and 2021. One customer accounted for approximately <span id="xdx_90F_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--OneCustomerMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zUjMqCAI0uY2" title="Concentration risk percentage"><span id="xdx_907_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--OneCustomerMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zQ7C3WjRK7t1" title="Concentration risk percentage">37</span></span>% and two customers together accounted for approximately <span id="xdx_90F_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--TwoCustomersTogetherMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zSiBVLz4t8q5" title="Total revenue, percentage"><span id="xdx_906_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--TwoCustomersTogetherMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zq9Skfg7W0Eb" title="Total revenue, percentage">48</span></span>% of total revenue
for the years ended December 31, 2022 and 2021, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">Three
customers accounted for more than <span id="xdx_902_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--FourCustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zzNino7otFNi" title="Concentration risk percentage">10</span>% of accounts receivable, and two customers each accounted for more than <span id="xdx_907_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--FourCustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zNDIuMuno5c2" title="Concentration risk percentage">10</span>% of accounts receivable,
at December 31, 2022 and 2021, respectively. These customers together accounted for approximately <span id="xdx_904_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--CustomersTogetherMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zn9o5cgE2otl" title="Concentration risk percentage">61</span>% and <span id="xdx_908_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--CustomersTogetherMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zLDBKw7sEXA4" title="Concentration risk percentage">66</span>% of accounts receivable
at December 31, 2022 and 2021, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></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_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">Recently Issued Accounting Standards</a></td>
<td class="text"><p id="xdx_847_eus-gaap--NewAccountingPronouncementsPolicyPolicyTextBlock_z5TCl01oFX" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b><span id="xdx_866_zsYzaD3vX8b4">Recently
Issued Accounting Standards</span></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">From
time to time, new accounting pronouncements are issued by the Financial Accounting Standards Board (&#8220;FASB&#8221;) that are adopted
by the Company as of the specified effective date. If not discussed, management believes that the impact of recently issued standards,
which are not yet effective, will not have a material impact on the Company&#8217;s financial statements upon adoption.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
June 2016, the FASB issued ASU No. 2016-13, Financial Instruments-Credit Losses (Topic 326) (&#8220;ASU 2016-13&#8221;), which requires
the measurement and recognition of expected credit losses for certain financial instruments, which includes the Company&#8217;s accounts
receivable. ASU 2016-13 replaces the existing incurred loss impairment model with an expected loss methodology, which will result in
more timely recognition of credit losses. The Company adopted ASU 2016-13 on January 1, 2022. The adoption did not have an impact on
the Company&#8217;s financial statements.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
February 2016, the FASB issued ASU No. 2016-02, Leases (Topic 842) (&#8220;ASU 2016-02&#8221;), which requires a lessee to recognize
most leases on the balance sheet as lease liabilities with corresponding right-of-use assets. The objective of ASU 2016-02 is to increase
transparency and comparability among organizations by recognizing lease assets and lease liabilities on the balance sheet and disclosing
key information about leasing arrangements. The recognized lease liabilities and lease assets represent the obligation to make payments
and the right to use or control the use of a specified asset for the lease term, respectively.</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On
January 1, 2022, the Company adopted Topic 842 using the modified retrospective approach with the effective date as the date of
initial application. Consequently, results for the year ended December 31, 2022 are presented under Topic
842. No prior period amounts were adjusted and continue to be reported in accordance with previous lease guidance, ASC Topic 840,
Leases. The Company elected the practical expedients available under the provisions of the new standard, including not reassessing
whether expired or existing contracts are or contain leases; not reassessing the classification of expired or existing leases; and
not reassessing the initial direct cost for any existing leases. Upon adoption, the Company recognized an operating lease liability
of $<span id="xdx_908_eus-gaap--OperatingLeaseLiability_iI_c20220102__us-gaap--AdjustmentsForNewAccountingPronouncementsAxis__us-gaap--AccountingStandardsUpdate201602Member_zpFliI9aVtQ7" title="Operating lease liability">626,699</span>
and a corresponding operating right-of-use asset of $<span id="xdx_909_eus-gaap--OperatingLeaseRightOfUseAsset_iI_c20220102__us-gaap--AdjustmentsForNewAccountingPronouncementsAxis__us-gaap--AccountingStandardsUpdate201602Member_zYgyvvzDLc4h" title="Operating right use of asset">681,327</span>.</span></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_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="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_BusinessCombinationsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 05<br> -Paragraph 4<br> -Subparagraph (a)-(d)<br> -URI https://asc.fasb.org/extlink&amp;oid=6909625&amp;loc=d3e227-128457<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationsPolicy</td>
</tr>
<tr>
<td style="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_CashAndCashEquivalentsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4273-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsPolicyTextBlock</td>
</tr>
<tr>
<td style="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_ComprehensiveIncomePolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 comprehensive income.</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_ComprehensiveIncomePolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 825<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126941378&amp;loc=d3e61044-112788<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_EarningsPerSharePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3630-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerSharePolicyTextBlock</td>
</tr>
<tr>
<td style="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_EquityMethodInvestmentsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equity method of accounting for investments and other interests. Investment includes, but is not limited to, unconsolidated subsidiary, corporate joint venture, noncontrolling interest in real estate venture, limited partnership, and limited liability company. Information includes, but is not limited to, ownership percentage, reason equity method is or is not considered appropriate, and accounting policy election for distribution received.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 21D<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=SL94080555-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentsPolicy</td>
</tr>
<tr>
<td style="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_GoodwillAndIntangibleAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 goodwill and intangible assets. This accounting policy also may address how an entity assesses and measures impairment of goodwill and intangible 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="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_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 05<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=109226317&amp;loc=d3e202-110218<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.CC)<br> -URI https://asc.fasb.org/extlink&amp;oid=27011434&amp;loc=d3e125687-122742<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32247-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32847-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 19<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32840-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL116659661-227067<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32280-109318<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4556-108314<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI https://asc.fasb.org/topic&amp;trid=2126998<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 330<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6471895&amp;loc=d3e55923-109411<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4492-108314<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126900757&amp;loc=d3e543-108305<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18823-107790<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_MarketableSecuritiesPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 investment classified as marketable security.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 320<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126980459&amp;loc=d3e62652-112803<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MarketableSecuritiesPolicy</td>
</tr>
<tr>
<td style="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_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.</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_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="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_ResearchAndDevelopmentExpensePolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 costs it has incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 730<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpensePolicy</td>
</tr>
<tr>
<td style="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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130561-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130566-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130563-203045<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -URI https://asc.fasb.org/topic&amp;trid=49130388<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130566-203045<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130563-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18823-107790<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130566-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 19<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130564-203045<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130566-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RevenueRecognitionPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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. Includes revenue from contract with customer and from other sources.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18823-107790<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18823-107790<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRecognitionPolicyTextBlock</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationOptionAndIncentivePlansPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI https://asc.fasb.org/topic&amp;trid=2228938<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.2.Q6)<br> -URI https://asc.fasb.org/extlink&amp;oid=122041274&amp;loc=d3e301413-122809<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy</td>
</tr>
<tr>
<td style="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_TradeAndOtherAccountsReceivablePolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 accounts receivable.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e4975-111524<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5212-111524<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=SL6953423-111524<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5093-111524<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5033-111524<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10133-111534<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TradeAndOtherAccountsReceivablePolicy</td>
</tr>
<tr>
<td style="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>35
<FILENAME>R23.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367629738048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Financial Instruments (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_CashAndCashEquivalentsAbstract', window );"><strong>Cash and Cash Equivalents [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock', window );">Schedule of Cash, Cash Equivalents, and Marketable Investment Securities</a></td>
<td class="text"><p id="xdx_894_eus-gaap--ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock_zPHr4pCewLL1" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">The
following table shows the Company&#8217;s cash, cash equivalents, and marketable investment securities by significant investment category
as of December 31, 2022:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B3_zwWjoJQzKBB1" style="display: none">Schedule
of Cash, Cash Equivalents, and Marketable Investment Securities</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="22" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Adjusted Cost</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Allowance for Credit Losses</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total Unrealized Gains / (Losses)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Fair Value</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Cash and Cash Equivalents</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Marketable Securities</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 40%; padding-left: 10pt">Cash</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_983_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zkc38h6lxtgh" style="width: 6%; text-align: right" title="Adjusted Cost">12,834,444</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zgY1Ay4hp6m2" style="width: 6%; text-align: right" title="Allowance for Credit Losses">&#160;&#160;&#160;&#160;&#160;&#160;<span style="-sec-ix-hidden: xdx2ixbrl0691">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_z960b4wyb304" style="width: 6%; text-align: right" title="Total Unrealized Gains / (Losses)"><span style="-sec-ix-hidden: xdx2ixbrl0693">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_982_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zCQg7iql5BH2" style="width: 6%; text-align: right" title="Fair Value">12,834,444</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98A_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zkkCTO5jGJHe" style="width: 6%; text-align: right" title="Cash and Cash Equivalents">12,834,444</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_980_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zgSRbdPQGMS4" style="width: 6%; text-align: right" title="Marketable Securities"><span style="-sec-ix-hidden: xdx2ixbrl0699">-</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 10pt">Level 1:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Money market funds</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zN8ZWCTwYsR9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Adjusted Cost">146,359</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z2uEjZApc1ei" style="border-bottom: Black 1.5pt solid; text-align: right" title="Allowance for Credit Losses"><span style="-sec-ix-hidden: xdx2ixbrl0703">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z6l5rq1DMLl1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total Unrealized Gains / (Losses)"><span style="-sec-ix-hidden: xdx2ixbrl0705">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zPPwpEbuQB9b" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair Value">146,359</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zfMKpxphIZvg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cash and Cash Equivalents">146,359</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zGlPYXRtRy2g" style="border-bottom: Black 1.5pt solid; text-align: right" title="Marketable Securities"><span style="-sec-ix-hidden: xdx2ixbrl0711">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Subtotal</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zLNjaG6IIuqf" style="text-align: right" title="Adjusted Cost">146,359</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z1z8pbG3jQb9" style="text-align: right" title="Allowance for Credit Losses"><span style="-sec-ix-hidden: xdx2ixbrl0715">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zf8D2XjauWdg" style="text-align: right" title="Total Unrealized Gains / (Losses)"><span style="-sec-ix-hidden: xdx2ixbrl0717">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zObA7U7vYnj7" style="text-align: right" title="Fair Value">146,359</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zOieXp2sZSd9" style="text-align: right" title="Cash and Cash Equivalents">146,359</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z0bhGlztCasj" style="text-align: right" title="Marketable Securities"><span style="-sec-ix-hidden: xdx2ixbrl0723">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Level 2:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">U.S. treasury securities</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z5nMmBtzAvXk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Adjusted Cost">67,892,825</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zPw9cDVl9wd2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Allowance for Credit Losses"><span style="-sec-ix-hidden: xdx2ixbrl0727">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zRpCJUWdWd44" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total Unrealized Gains / (Losses)">389,241</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z51ErO3mpkob" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair Value">68,282,066</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zfjODKPyQVqk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cash and Cash Equivalents">9,993,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zcNeDpsmclh9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Marketable Securities">58,289,066</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Subtotal</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zJhp1AxNUV75" style="border-bottom: Black 1.5pt solid; text-align: right" title="Adjusted Cost">67,892,825</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zA5tutCNr0f6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Allowance for Credit Losses"><span style="-sec-ix-hidden: xdx2ixbrl0739">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zTYUN6xrBmx5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total Unrealized Gains / (Losses)">389,241</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z8QGNiFtKry9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair Value">68,282,066</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zS67B0v91gdc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cash and Cash Equivalents">9,993,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zhBjznmJ0Qk1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Marketable Securities">58,289,066</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt; padding-left: 10pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98F_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231_zdDQuO0jFhJ2" style="border-bottom: Black 2.5pt double; text-align: right" title="Adjusted Cost">80,873,628</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231_zyQR38uUUdp8" style="border-bottom: Black 2.5pt double; text-align: right" title="Allowance for Credit Losses"><span style="-sec-ix-hidden: xdx2ixbrl0751">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98E_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231_zGj6bL8pSmQ6" style="border-bottom: Black 2.5pt double; text-align: right" title="Total Unrealized Gains / (Losses)">389,241</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--TradingSecurities_iI_c20221231_zJOqkFxoHU8h" style="border-bottom: Black 2.5pt double; text-align: right" title="Fair Value">81,262,869</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231_ziAmHZwZNT3h" style="border-bottom: Black 2.5pt double; text-align: right" title="Cash and Cash Equivalents">22,973,803</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_981_eus-gaap--MarketableSecurities_iI_c20221231_zSyktWhms3Zc" style="border-bottom: Black 2.5pt double; text-align: right" title="Marketable Securities">58,289,066</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_CashAndCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CashAndCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="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_ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 components of cash, cash equivalents, and investments.</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_ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock</td>
</tr>
<tr>
<td style="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>36
<FILENAME>R24.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367633761648">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_BusinessCombinationAndAssetAcquisitionAbstract', window );"><strong>Business Combination and Asset Acquisition [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock', window );">Schedule of Assets and Liabilities assumed</a></td>
<td class="text"><p id="xdx_896_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_zoB9dOcK5MMe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
total purchase consideration, including adjustment during the measurement period, was allocated to the assets acquired and liabilities
assumed as set forth below:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BC_zBpWnSsXO9jb" style="display: none">Schedule
of Assets and Liabilities assumed</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amounts Recognized as of Acquisition Date (as previously reported)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Measurement Period Adjustments</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amounts Recognized as of Acquisition Date (as adjusted)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Purchase Consideration</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 52%; text-indent: 10pt; padding-left: 0pt">Fair value of common shares issued</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_988_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z5aMwDkMYC6" style="width: 12%; text-align: right" title="Fair value of common shares issued">25,160,223</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98B_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zl9jDNzremH7" style="width: 12%; text-align: right" title="Fair value of common shares issued">480,776</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_985_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zF4tr7SJ2ed7" style="width: 12%; text-align: right" title="Fair value of common shares issued">25,640,999</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Payable to shareholder</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zT9oWzJ6vvW" style="text-align: right" title="Payable to shareholders">100,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6NKrL9iJ6Xg" style="text-align: right" title="Payable to shareholders">(100,000</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zrcLvDmkTEDa" style="text-align: right" title="Payable to shareholders"><span style="-sec-ix-hidden: xdx2ixbrl0797">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 10pt; padding-left: 0pt">Fair value of contingent shares</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqHlBE2TeBfe" style="text-align: right" title="Fair value of contingent shares">8,684,669</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zAiB51WFkRLf" style="text-align: right" title="Fair value of contingent shares">165,957</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zgASPTa2c2I5" style="text-align: right" title="Fair value of contingent shares">8,850,626</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Fair value of contingent warrants</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_983_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zHFgoUGsbtY5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair value of contingent warrants">1,747,972</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zk8EBzLNRS7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair value of contingent warrants">33,402</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zLntKmJTHlXh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair value of contingent warrants">1,781,374</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total fair value of consideration transferred</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98F_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zq8Y7EoXGfIb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Business combination, consideration transferred">35,692,864</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_984_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6eqjpfNBNb2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Business combination, consideration transferred">580,135</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_980_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zJa2SITxTzAe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Business combination, consideration transferred">36,272,999</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Identifiable assets acquired and liabilities assumed</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-indent: 10pt; padding-left: 0pt">Cash</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_986_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zjqRs8TqBtNa" style="text-align: right" title="Cash">1,196,243</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zwIqiNOHJVDf" style="text-align: right" title="Cash"><span style="-sec-ix-hidden: xdx2ixbrl0819">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98F_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zoCQ5SU7Dca6" style="text-align: right" title="Cash">1,196,243</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Accounts receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zR1VEVyGOPQl" style="text-align: right" title="Accounts receivables">31,170</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zJzcHUlxhYik" style="text-align: right" title="Accounts receivables"><span style="-sec-ix-hidden: xdx2ixbrl0825">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zIyX5wCb1wK6" style="text-align: right" title="Accounts receivables">31,170</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Prepaid expenses and other current assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zbaAiONKMTk3" style="text-align: right" title="Prepaid expenses and other current assets">70,321</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zGfN5UU06tW9" style="text-align: right" title="Prepaid expenses and other current assets"><span style="-sec-ix-hidden: xdx2ixbrl0831">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zYYUDSSoZoSc" style="text-align: right" title="Prepaid expenses and other current assets">70,321</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Property and equipment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z4VdkvdGtR49" style="text-align: right" title="Property and equipments">408,173</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqeLJoDbpC43" style="text-align: right" title="Property and equipments"><span style="-sec-ix-hidden: xdx2ixbrl0837">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6jBfUlvuqr8" style="text-align: right" title="Property and equipments">408,173</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Technology - In-process research and development</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_ze5XozRn7Pze" style="text-align: right" title="Research and development in process">26,101,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6qo5o6x4Dca" style="text-align: right" title="Research and development in process"><span style="-sec-ix-hidden: xdx2ixbrl0843">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zKR8Tm5vwSL9" style="text-align: right" title="Research and development in process">26,101,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Non-competition agreements</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zVAunUFtzO74" style="text-align: right" title="Non competition agreements">1,094,000</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zYZHR6yPvnt1" style="text-align: right" title="Non competition agreements"><span style="-sec-ix-hidden: xdx2ixbrl0849">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zLZkkiBfP5V9" style="text-align: right" title="Non competition agreements">1,094,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Accounts payable and accrued other expenses</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zWQgWB38BlBl" style="text-align: right" title="Accounts payable and accrued other expenses">(1,069,274</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zFP1kpZVmam" style="text-align: right" title="Accounts payable and accrued other expenses">(101,593</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zopN2Jh5ioA6" style="text-align: right" title="Accounts payable and accrued other expenses">(1,170,867</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Deferred tax liability</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zcmrW1yJz8xj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax liability">(6,845,587</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zCbpuxXwzNFj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax liability"><span style="-sec-ix-hidden: xdx2ixbrl0861">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zc7D9xtVa4eb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax liability">(6,845,587</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Total identifiable net assets</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zzUvKq4IhyJi" style="text-align: right" title="Total indentifiable net assets">20,986,046</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z1iMxZtU3ESh" style="text-align: right" title="Total indentifiable net assets">(101,593</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zMW8BD18K1Q1" style="text-align: right" title="Total indentifiable net assets">20,884,453</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Goodwill</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--Goodwill_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zrRHWc5ZnMUh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill">14,706,818</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--Goodwill_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zNdDz62Tu8r8" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill">681,728</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--Goodwill_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zboMmRD6wpW6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill">15,388,546</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Total</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zGT0kqlJ9Zb6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">35,692,864</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zR9m7fgGdva8" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">580,135</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqTzeTfYzus9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total">36,272,999</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_BusinessCombinationAndAssetAcquisitionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BusinessCombinationAndAssetAcquisitionAbstract</td>
</tr>
<tr>
<td style="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_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 a material business combination completed during the period, including background, timing, and recognized assets and liabilities. This table does not include leveraged buyouts.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1486-128463<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock</td>
</tr>
<tr>
<td style="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>37
<FILENAME>R25.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367629168480">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock', window );">Schedule of Fair Value Assets and Liabilities</a></td>
<td class="text"><p id="xdx_89D_eus-gaap--FairValueAssetsMeasuredOnRecurringBasisTextBlock_zNmBIn0gxFR5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes the assets and liabilities measured at fair value on a recurring basis as of December 31, 2022 and December
31, 2021, by level within the fair value hierarchy:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BE_zHl7PXx6c4Q9" style="display: none">Schedule of Fair Value Assets and Liabilities</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49E_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_za35LZtp3k6f" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 1)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zZzHIAE0QYXe" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 2)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_491_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel3Member_zqm58cXIqJHj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 3)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49F_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember_zQ1lL7V2gdYj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="14" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 1)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 2)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 3)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Assets:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--CashAndCashEquivalentsFairValueDisclosure_iI_zbyRrbAqafw" style="vertical-align: bottom; background-color: White">
    <td style="width: 44%; text-align: left; text-indent: 10pt; padding-left: 0pt">Cash equivalents</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">&#160;&#160;&#160;<span style="-sec-ix-hidden: xdx2ixbrl0891">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">10,179,667</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0893">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 10%; text-align: right">10,179,667</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--MarketableSecurities_iI_pp0p0_zzVO4M4LdAeb" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 0pt; padding-left: 10pt">Marketable securities (U.S. treasury bills and notes)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0896">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">58,289,066</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0898">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">58,289,066</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--AssetsFairValueDisclosure_iI_pp0p0_zUWfYQWephfb" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Total assets measured at fair value</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0901">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">68,468,733</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0903">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">68,468,733</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Liabilities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_ecustom--FairValueOfContingentConsiderationToCommonStock_iI_pp0p0_za3kJmZITjvf" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Contingent consideration - common stock</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0906">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0907">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">2,499,147</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">2,499,147</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_ecustom--FairValueOfContingentConsiderationToWarrants_iI_pp0p0_z7AG7cBfWd0e" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Contingent consideration - warrants</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0911">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0912">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">233,209</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">233,209</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LiabilitiesFairValueDisclosure_iI_pp0p0_zaWsVHrCUdW6" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Total liabilities measured at fair value</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0916">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0917">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,732,356</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,732,356</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49F_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z85NmgSrPMEe" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 1)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zOzl9z5G0Llj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 2)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel3Member_zdaj3V3Afke1" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 3)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49F_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember_zhrYTVGZIXgj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="14" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 1)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 2)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(Level 3)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Total</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Assets:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--MarketableSecurities_iI_pp0p0_zFMgCxKeNT1i" style="vertical-align: bottom; background-color: White">
    <td style="width: 44%; text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Marketable securities (certificates of deposit)</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right">&#160;&#160;&#160;<span style="-sec-ix-hidden: xdx2ixbrl0921">-</span></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right">1,255,266</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0923">-</span></td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right">1,255,266</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--AssetsFairValueDisclosure_iI_pp0p0_z7tnOpuiG6s4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total assets measured at fair value</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0926">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">1,255,266</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0928">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">1,255,266</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Liabilities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_ecustom--FairValueOfContingentConsiderationToCommonStock_iI_pp0p0_z8Qq2Av8CJc6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Contingent consideration - common stock</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0931">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0932">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">8,684,669</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">8,684,669</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_ecustom--FairValueOfContingentConsiderationToWarrants_iI_pp0p0_z1AwCSUhJ3x" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">Contingent consideration - warrants</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0936">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0937">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,747,972</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,747,972</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LiabilitiesFairValueDisclosure_iI_pp0p0_zeXUXPL2mrF" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total liabilities measured at fair value</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0941">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl0942">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">10,432,641</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">10,432,641</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock', window );">Schedule of Changes in Fair Value Measurement</a></td>
<td class="text"><p id="xdx_89F_eus-gaap--FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_z5taQBMfavhc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
changes for Level 3 items measured at fair value on a recurring basis are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BF_zDAxofxhNmji" style="display: none">Schedule of Changes in Fair Value Measurement</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_49F_20220101__20221231_znsNOgdNLwad" style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--BusinessCombinationContingentConsiderationLiabilityNoncurrent_iS_pp0p0_zkKvjc5i4wz1" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; padding-left: 0pt">Fair value as of December 31, 2021</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">10,432,641</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_ecustom--ContingentConsideredIssuedForMeasurementPeriodAdjustments_z247waNkq5Jg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Change in contingent purchase consideration for measurement period adjustments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">199,359</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_407_ecustom--ContingentConsideredIssuedForBusinessAcquisitions_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Change in fair value of contingent consideration issued for business acquisitions</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(7,899,644</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_406_eus-gaap--BusinessCombinationContingentConsiderationLiabilityNoncurrent_iE_zfFo3ktUKHt6" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt; padding-left: 0pt">Fair value as of December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">2,732,356</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock', window );">Schedule of Contingent Consideration Common Stock and Warrants</a></td>
<td class="text"><p id="xdx_897_eus-gaap--FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock_zZHSiyyF7nba" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B4_zw5C8B39DwU2" style="display: none">Schedule of Contingent Consideration Common Stock and Warrants</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 56%; text-indent: 10pt; padding-left: 0pt">Stock price</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zVVJRU7AwPsf" style="width: 18%; text-align: right" title="Warrants measurement input">2.52</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_z7vqzQeVIZG" style="width: 18%; text-align: right" title="Warrants measurement input">8.93</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 10pt; padding-left: 0pt">Strike price</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputStrikePriceMember_zfmlUrenCJN4" style="text-align: right" title="Warrants measurement input">9.13</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98D_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputStrikePriceMember_zGt6eTgMthgf" style="text-align: right" title="Warrants measurement input">9.13</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-indent: 10pt; padding-left: 0pt">Volatility</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right" title="Warrants measurement input"><span id="xdx_903_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputPriceVolatilityMember_zIyI4ZXfye5a" title="Warrants measurement input">75.00</span></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right" title="Warrants measurement input"><span id="xdx_90A_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputPriceVolatilityMember_z8EbF6amFt7" title="Warrants measurement input">80.00</span></td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Risk-free rate</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right" title="Warrants measurement input"><span id="xdx_906_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zCGVh05kNBZ8" title="Warrants measurement input">4.10</span></td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right" title="Warrants measurement input"><span id="xdx_90C_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zUlOw4xorjy8" title="Warrants measurement input">1.30</span></td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Expected term</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right" title="Warrants measurement input"><span id="xdx_90E_eus-gaap--WarrantsAndRightsOutstandingTerm_iI_dtY_c20221231_zdHebkjF1P7k" title="Expected term">4.0</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right" title="Warrants measurement input"><span id="xdx_906_eus-gaap--WarrantsAndRightsOutstandingTerm_iI_dtY_c20211231_zAvxvuojf4r4" title="Expected term">5.0</span></td><td style="text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In
order to calculate the probability-adjusted value of the contingent consideration-common stock and contingent
consideration-warrants, the Company estimated the probability as of the valuation date of achieving certain milestones, which
include regulatory approval for identified products, as well as production and net revenue targets. The probability of achieving the
milestone related to net revenues was estimated as of the acquisition date using a Monte Carlo simulation valuation model.
Significant inputs other than the fair value assumptions noted above were consistent as of the valuation date. The unobservable
significant inputs to the valuation model were as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><b>December 31, 2022</b></td>
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; width: 60%">Stock price</td>
    <td style="width: 2%">&#160;</td>
    <td style="width: 1%">$</td>
    <td id="xdx_98E_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zlQ87Dl6Vyla" style="text-align: right; width: 16%" title="Business combination,contingent consideration">2.52</td>
    <td style="width: 1%">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zoWfN4LNLVik" style="width: 16%; text-align: right" title="Business combination,contingent consideration">8.93</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Risk-free rate</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_986_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_z4yZAY1oryd5" style="text-align: right" title="Business combination,contingent consideration">4.10</td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zqs5FoMKZmm4" style="text-align: right" title="Business combination,contingent consideration">1.30</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Expected term</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_988_ecustom--BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_dtY_c20220101__20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputExpectedTermMember_zV03xOskg673" style="text-align: right" title="Business combination,contingent consideration">4.0</td>
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_dtY_c20210101__20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputExpectedTermMember_zMyG6tQ5glZ9" style="text-align: right" title="Business combination,contingent consideration">5.0</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Weighted-average cost of capital</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_98C_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputCostOfCapitalMember_zign2TiBfOpj" style="text-align: right" title="Business combination,contingent consideration">27.00</td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputCostOfCapitalMember_zsPtNGISMoW9" style="text-align: right" title="Business combination,contingent consideration">27.00</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Revenue discount rate</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_982_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputDiscountRateMember_zj7XSoiFH0le" style="text-align: right" title="Business combination,contingent consideration">9.50</td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputDiscountRateMember_z0asoFeyAfBk" style="text-align: right" title="Business combination,contingent consideration">9.50</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Equity volatility</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_98D_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputEquityVolatilityMember_zrH4SwDUpeC1" style="text-align: right" title="Business combination,contingent consideration">75.00</td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputEquityVolatilityMember_zsAOTJizpiud" style="text-align: right" title="Business combination,contingent consideration">80.00</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left">Asset volatility</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_98C_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputAssetVolatilityMember_zlss7vR74gW3" style="text-align: right" title="Business combination,contingent consideration">80.00</td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputAssetVolatilityMember_zinRGtpOSIJ5" style="text-align: right" title="Business combination,contingent consideration">80.00</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt; text-align: left">Revenue volatility</td>
    <td>&#160;</td>
    <td>&#160;</td>
    <td id="xdx_984_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputRevenueVolatilityMember_z6SxEvgIuM8f" style="text-align: right" title="Business combination,contingent consideration">30.00</td>
    <td>%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputRevenueVolatilityMember_zD07wLrSxP54" style="text-align: right" title="Business combination,contingent consideration">30.00</td><td style="text-align: left">%</td></tr>
  </table>

<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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 financial instruments measured at fair value, including those classified in shareholders' equity measured on a recurring or nonrecurring basis. Disclosures include, but are not limited to, fair value measurements recorded and the reasons for the measurements, level within the fair value hierarchy in which the fair value measurements are categorized and transfers between levels 1 and 2. Nonrecurring fair value measurements are those that are required or permitted in the statement of financial position in particular circumstances.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19279-110258<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2C<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=SL7498348-110258<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock</td>
</tr>
<tr>
<td style="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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 input and valuation technique used to measure fair value and change in valuation approach and technique for each separate class of asset and liability measured on recurring and nonrecurring basis.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock</td>
</tr>
<tr>
<td style="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_FairValueAssetsMeasuredOnRecurringBasisTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, by class that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock</td>
</tr>
<tr>
<td style="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_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="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>38
<FILENAME>R26.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367629919712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Schedule of Property and Equipment</a></td>
<td class="text"><p id="xdx_894_eus-gaap--PropertyPlantAndEquipmentTextBlock_zufKFbdQN93d" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Property
and equipment, net consisted of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zAadQyTXeCaa" style="display: none">Schedule
of Property and Equipment</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; font-weight: bold; text-align: center">Estimated Useful Lives</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"> in years</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 42%; text-align: left">Lab equipment</td><td style="width: 2%">&#160;</td>
    <td style="width: 16%; text-align: center"><span id="xdx_901_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember__srt--RangeAxis__srt--MinimumMember_znVZJlCzr6Ic" title="Property and equipment estimated useful lives">3</span> - <span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember__srt--RangeAxis__srt--MaximumMember_zF5oTl8H1ogj" title="Property and equipment estimated useful lives">5</span></td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zmu1PucZUiq8" style="width: 16%; text-align: right" title="Property and equipment, gross">3,574,730</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zvVVONa7RET4" style="width: 16%; text-align: right" title="Property and equipment, gross">2,476,813</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Leasehold improvements</td><td>&#160;</td>
    <td style="text-align: center"><span id="xdx_901_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdsAndLeaseholdImprovementsMember__srt--RangeAxis__srt--MinimumMember_ztUqRzb2vuV8" title="Property and equipment estimated useful lives">0</span> -<span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdsAndLeaseholdImprovementsMember__srt--RangeAxis__srt--MaximumMember_z2MMxlVmKNS" title="Property and equipment estimated useful lives">3</span></td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_z0kVDaESJbz7" style="text-align: right" title="Property and equipment, gross">224,957</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zAWPIBdXfhZj" style="text-align: right" title="Property and equipment, gross">3,157</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Office equipment, furniture and other</td><td>&#160;</td>
    <td style="text-align: center"><span id="xdx_90B_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember__srt--RangeAxis__srt--MinimumMember_zKxW5Kt7wvUf" title="Property and equipment estimated useful lives">2</span> - <span id="xdx_905_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember__srt--RangeAxis__srt--MaximumMember_z7soLGISr3b7" title="Property and equipment estimated useful lives">5</span></td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zI15Oax5n0q3" style="text-align: right" title="Property and equipment, gross">112,044</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zj6rcaM7vD6j" style="text-align: right" title="Property and equipment, gross">75,401</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Less accumulated depreciation and amortization</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iNI_pp0p0_di_c20221231_ztsrrGjJbPX6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: accumulated depreciation">(1,372,248</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iNI_di_c20211231_zSRxpUN4hrMb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: accumulated depreciation">(622,155</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt; text-align: left; padding-bottom: 2.5pt">Fixed assets, net</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20221231_zqUJfyGgMRq2" style="border-bottom: Black 2.5pt double; text-align: right" title="Property and equipment, net">2,539,483</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231_zK8eEBaGZP4a" style="border-bottom: Black 2.5pt double; text-align: right" title="Property and equipment, net">1,933,216</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_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_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="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>39
<FILENAME>R27.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367629168608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangible Assets (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfGoodwillTextBlock', window );">Schedule of Goodwill</a></td>
<td class="text"><p id="xdx_89B_eus-gaap--ScheduleOfGoodwillTextBlock_zy5wuSkyLhJe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BB_zXJqfN4WXEx2" style="display: none">Schedule
of Goodwill</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%">Balance as of December 31, 2021</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--Goodwill_iS_c20220101__20221231_zSG9p4Pxx3b3" style="width: 16%; text-align: right" title="Goodwil - beginning">14,706,818</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Measurement period adjustments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--GoodwillTranslationAndPurchaseAccountingAdjustments_c20220101__20221231_zpqLXCPVf9Ue" style="text-align: right" title="Measurement period adjustments">681,728</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Goodwill impairment charges</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--GoodwillImpairmentLoss_iN_di_c20220101__20221231_z4hdoEOIjmW2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill impairment charges">(15,388,546</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Balance as of December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_982_eus-gaap--Goodwill_iE_c20220101__20221231_z7ijE6Juloa3" style="border-bottom: Black 2.5pt double; text-align: right" title="Goodwill - ending"><span style="-sec-ix-hidden: xdx2ixbrl1056">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of Intangible Assets, Net</a></td>
<td class="text"><p id="xdx_89A_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zUJFjeOcz53i" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Intangible
assets, net consisted of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/><span id="xdx_8BB_zxPOmLGPkh4g" style="display: none">Schedule of Intangible Assets, Net</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="13" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Weighted-Average</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Gross</td><td style="font-weight: bold">&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Net</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Useful Life (1)</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Carrying</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Accumulated</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Carrying</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(in Years)</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amortization</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 28%; text-align: left">In-process research and development</td><td style="width: 2%">&#160;</td>
    <td style="width: 16%; text-align: center"><span id="xdx_90A_ecustom--IndefiniteLivedIntangibleAssetUsefulLife_c20220101__20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_fKDEp_z31eQo26Yp3h" title="Estimated useful lives in years, term">Indefinite</span></td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_zlqYNjg9VeQb" style="width: 14%; text-align: right" title="Intangible assets, gross">26,101,000</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_z6TiZWwKz567" style="width: 14%; text-align: right" title="Less accumulated amortization"><span style="-sec-ix-hidden: xdx2ixbrl1066">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_z1DHedeNQFx8" style="width: 14%; text-align: right" title="Intangible assets, net">26,101,000</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Non-competition agreements</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="text-align: center; padding-bottom: 1.5pt"><span id="xdx_903_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20220101__20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_fKDEp_zyl1YHHvtPda" title="Estimated useful lives in years">2.7</span></td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zKLnTMb3a3xj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, gross">1,094,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zjqD8jYMj49k" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less accumulated amortization">(426,667</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zkbTNhTIkuk5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, net">667,333</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 10pt">Total intangible assets</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231_z0WMvdVhQkE" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, gross">27,195,000</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231_zlLPxyW87qx9" style="border-bottom: Black 2.5pt double; text-align: right" title="Less accumulated amortization">(426,667
                                                                          </td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_986_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231_z4Mzzlolgmhh" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, net">26,768,333</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>




<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="13" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Weighted-Average</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Gross</td><td style="font-weight: bold">&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Net</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td style="font-weight: bold; text-align: center">Useful Life (1)</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Carrying</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Accumulated</td><td style="font-weight: bold">&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Carrying</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">(in Years)</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amortization</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amount</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 28%; text-align: left">In-process research and development</td><td style="width: 2%">&#160;</td>
    <td style="width: 16%; text-align: center"><span id="xdx_90D_ecustom--IndefiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_fKDEp_zmb4oy7mWM02" title="Estimated useful lives in years, term">Indefinite</span></td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" style="width: 14%; text-align: right" title="Intangible assets, gross">26,101,000</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" style="width: 14%; text-align: right" title="Less accumulated amortization"><span style="-sec-ix-hidden: xdx2ixbrl1088">-</span></td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_989_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" style="width: 14%; text-align: right" title="Intangible assets, net">26,101,000</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Non-competition agreements</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="text-align: center; padding-bottom: 1.5pt"><span id="xdx_902_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_fKDEp_zvgT5UO5hyG4" title="Estimated useful lives in years">2.7</span></td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, gross">1,094,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less accumulated amortization"><span style="-sec-ix-hidden: xdx2ixbrl1096">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, net">1,094,000</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 10pt">Total intangible assets</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, gross">27,195,000</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Less accumulated amortization"><span style="-sec-ix-hidden: xdx2ixbrl1102">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98A_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, net">27,195,000</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">Schedule of Future Amortization Expense</a></td>
<td class="text"><p id="xdx_890_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zSenvXJLUMnd" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
expected future annual amortization expense of the Company&#8217;s intangible assets held as of December 31, 2022 is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_z9TOq4K1fl82" style="display: none">Schedule
of Future Amortization Expense</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td style="border-bottom: Black 1.5pt solid; text-align: left; font-weight: bold">Year Ending December 31,</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_495_20221231_zZOgbiMOmSo6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Amortization Expense</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_maFLIANzZiM_z6Mwhi5MtC03" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: left; padding-left: 10pt">2023</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 16%; text-align: right">364,668</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_maFLIANzZiM_zPi6oRKVcS4g" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt">2024</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">302,665</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsNet_iTI_mtFLIANzZiM_z3TYXfozHJl7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">667,333</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="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_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfGoodwillTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 goodwill by reportable segment and in total which includes a rollforward schedule.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1A<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=SL108378252-109267<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfGoodwillTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="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>40
<FILENAME>R28.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367629926976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Expenses (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock', window );">Schedule of Accrued Expenses</a></td>
<td class="text"><p id="xdx_895_eus-gaap--ScheduleOfAccruedLiabilitiesTableTextBlock_z9hfSnagKB3e" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Accrued
expenses consisted of the following:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/><span id="xdx_8B6_zH6tJZRCqCYg" style="display: none">Schedule of Accrued Expenses</span><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_496_20221231_zkSHRlKVq0s3" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20211231_zjQv8PLgiAbg" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--AccruedPayrollTaxesCurrent_iI_maALCzYz0_zviMbejSzDh2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">Payroll liabilities</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">428,354</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">2,455,694</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--AccruedSalesCommissionCurrent_iI_maALCzYz0_z4EfOxx8R6g1" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Distributor commissions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">159,725</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">509,500</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--OtherAccruedLiabilitiesCurrent_iI_maALCzYz0_zW1KYHmRCux8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Other accrued liabilities</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">346,368</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">894,458</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--AccruedLiabilitiesCurrent_iI_mtALCzYz0_zKwdyYIa59bj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt">Total accrued expenses</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">934,447</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">3,859,652</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="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_ScheduleOfAccruedLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 components of accrued liabilities.</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_ScheduleOfAccruedLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="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>41
<FILENAME>R29.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367626188176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock', window );">Summary of Revenue by Geographic Area</a></td>
<td class="text"><p id="xdx_89A_eus-gaap--ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_zM7wlJgRkMy7" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table sets forth revenue by geographic area:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/><span id="xdx_8B9_zmM82Zzp7lIe" style="display: none">Summary of Revenue by Geographic Area</span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Years Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left">United States</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231__srt--StatementGeographicalAxis__country--US_zimrR6QgVbRf" style="width: 16%; text-align: right" title="Revenue">24,671,554</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__country--US_z7WKIFaN0eG2" style="width: 16%; text-align: right" title="Revenue">52,185,812</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">Rest of World</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231__srt--StatementGeographicalAxis__custom--RestOfWorldMember_zYuxB70qmDc2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Revenue">9,546,655</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__custom--RestOfWorldMember_zCDwnwTChxM1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Revenue">45,699,791</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt; padding-left: 10pt">Total</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98F_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231_za3Y0xDQt9R3" style="border-bottom: Black 2.5pt double; text-align: right" title="Revenue">34,218,209</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231_zIhBz77hyrBd" style="border-bottom: Black 2.5pt double; text-align: right" title="Revenue">97,885,603</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Percentage of revenue by area:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">United States</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20220101__20221231__srt--StatementGeographicalAxis__country--US__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zxV4aaR3VD1h" style="text-align: right" title="Percentage of revenue">72</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20210101__20211231__srt--StatementGeographicalAxis__country--US__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zRsBOsltOZh1" style="text-align: right" title="Percentage of revenue">53</td><td style="text-align: left">%</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Rest of World</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20220101__20221231__srt--StatementGeographicalAxis__custom--RestOfWorldMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zWJhVAw4HHPh" style="text-align: right" title="Percentage of revenue">28</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20210101__20211231__srt--StatementGeographicalAxis__custom--RestOfWorldMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zbZY118tALWh" style="text-align: right" title="Percentage of revenue">47</td><td style="text-align: left">%</td></tr>
  </table>

<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_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Schedule of Deferred Revenue</a></td>
<td class="text"><p id="xdx_898_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_zdzSJgbIrtU6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Changes
in the Company&#8217;s deferred revenue balance for the years ended December 31, 2022 and 2021 were as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B9_zgyashcgWsyc" style="display: none">Schedule of Deferred Revenue</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 82%; padding-left: 0pt">Balance as of December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ContractWithCustomerLiability_iS_c20210101__20211231_zaNqra3MoAck" style="width: 14%; text-align: right" title="Deferred revenue, beginning balance">305,307</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Revenue recognized included in deferred revenue balance at the beginning of the period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_iN_di_c20210101__20211231_znJaQpWhemu" style="text-align: right" title="Revenue recognized included in deferred revenue balance at the beginning of the period">(256,110</td><td style="text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Increase due to prepayments from customers</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_ecustom--IncreaseDueToPrepaymentsFromCustomers_c20210101__20211231_zIdtHNZ5daS4" style="text-align: right" title="Increase due to prepayments from customers">79,213</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">Increase due to note receivable</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_ecustom--IncreaseDueToNoteReceivable_c20210101__20211231_zhlcMCtd0jnc" style="text-align: right" title="Increase due to note receivable">150,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Decrease due to refunds to customers and application to open balances</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_988_ecustom--DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances_iN_di_c20210101__20211231_zWwoYEv5wWr6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Decrease due to refunds to customers and application to open balances">(128,410</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 0pt">Balance as of December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_983_eus-gaap--ContractWithCustomerLiability_iS_c20220101__20221231_zFhMrgQZDwWk" style="text-align: right" title="Deferred revenue, beginning balance">150,000</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">Revenue recognized included in deferred revenue balance at the beginning of the period</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_iN_di_c20220101__20221231_zxxFrWtj6R1c" style="border-bottom: Black 1.5pt solid; text-align: right" title="Revenue recognized included in deferred revenue balance at the beginning of the period">(150,000</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt; padding-left: 0pt">Balance as of December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98D_eus-gaap--ContractWithCustomerLiability_iE_c20220101__20221231_zkZzjylX9Hyi" style="border-bottom: Black 2.5pt double; text-align: right" title="Deferred revenue, Ending balance"><span style="-sec-ix-hidden: xdx2ixbrl1170">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_ContractWithCustomerAssetAndLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130551-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="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_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="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_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 names of foreign countries from which revenue is material and the amount of revenue from external customers attributed to those countries. An entity may also provide subtotals of geographic information about groups of countries.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock</td>
</tr>
<tr>
<td style="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>42
<FILENAME>R30.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367629810128">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings per Share (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Schedule of Basic and Diluted Earnings Per Share</a></td>
<td class="text"><p id="xdx_896_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zFu7d9B86eWh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table reconciles the numerator and the denominator used to calculate basic and diluted earnings per share for years ended December
31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BC_zW4rVQiMKRi" style="display: none">Schedule of Basic and Diluted Earnings Per Share</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_492_20220101__20221231_z9M85j28GsQ8" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49D_20210101__20211231_z5oOCk12xVr9" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Years Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold">Numerator</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td><td>&#160;</td>
    <td colspan="2">&#160;</td><td>&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--NetIncomeLoss_z297CqgT2nP7" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%; text-align: left; padding-bottom: 2.5pt">Net income, as reported</td><td style="width: 2%; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; width: 16%; text-align: right">(14,238,249</td><td style="width: 1%; padding-bottom: 2.5pt; text-align: left">)</td><td style="width: 2%; padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; width: 1%; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; width: 16%; text-align: right">36,658,564</td><td style="width: 1%; padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="font-weight: bold">Denominator</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_zpKSsPuKKwNk" style="vertical-align: bottom; background-color: White">
    <td>Weighted average shares, basic</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">31,479,028</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">28,874,555</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--WeightedAverageNumberDilutedSharesOutstandingAdjustment_zGZ0UQ8vOq0j" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 1.5pt">Dilutive effect of stock options, warrants and RSUs</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1182">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,029,131</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_zipzMT2Yjxwl" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt">Shares used to compute diluted earnings per share</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">31,479,028</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">29,903,686</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_405_eus-gaap--EarningsPerShareBasic_pid_zv6tUWCanpve" style="vertical-align: bottom; background-color: White">
    <td>Basic earnings per share</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">(0.45</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1.27</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--EarningsPerShareDiluted_pid_zdtnkl0idUJd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Diluted earnings per share</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">(0.45</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">1.23</td><td style="text-align: left">&#160;</td></tr>
  </table>

<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_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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="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>43
<FILENAME>R31.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367630805392">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-Based Payment Arrangement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Schedule of Option Activity</a></td>
<td class="text"><p id="xdx_89D_eus-gaap--ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_zU7Jdw4RcIo6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes option activity during the years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B7_zUfDgN8BJuNc" style="display: none">Schedule of Option Activity</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Number of Options</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Exercise Price</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Fair Value</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Remaining Contractual Life (Years)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 44%">Outstanding at December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_c20210101__20211231_zZ8tWKvxHUo1" style="width: 10%; text-align: right" title="Number of Options Outstanding, Beginning">1,300,588</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zYlYqcyPL3vj" style="width: 10%; text-align: right" title="Weighted Average Exercise Price Outstanding, Beginning">2.44</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_986_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20210101__20211231_ziwNIJ8YdwV8" style="width: 10%; text-align: right" title="Weighted Average Fair Value Outstanding, Beginning">1.24</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right">&#160;</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_c20210101__20211231_ztgppmJTgss7" style="text-align: right" title="Number of Options Outstanding, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1222">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zgPhkaRRZ2Nf" style="text-align: right" title="Weighted Average Exercise Price, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1224">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20210101__20211231_zqclO0wK9Vm8" style="text-align: right" title="Weighted Average Fair Value, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1226">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_c20210101__20211231_zYdtBO0NMSr3" style="text-align: right" title="Number of Options Outstanding, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1228">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zU5MuRoAul8d" style="text-align: right" title="Weighted Average Exercise Price, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1230">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_c20210101__20211231_z8aAk9CDvFoh" style="text-align: right" title="Weighted Average Fair Value, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1232">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Forfeited/Cancelled</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_c20210101__20211231_zu1AG2fNXBD4" style="text-align: right" title="Number of Options Outstanding, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1234">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_c20210101__20211231_zgjwcSQcTQ95" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1236">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_c20210101__20211231_zwKulepzb3gg" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1238">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_980_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_di_c20210101__20211231_z6fnIuxBWCek" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Options Outstanding, Exercised">(189,225</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zugS8rkljjsj" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised">2.38</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_98C_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised_pid_c20210101__20211231_zkJOrwsIEpab" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised">1.12</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Outstanding at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_c20220101__20221231_z9wxyPHMMC1" style="text-align: right" title="Number of Options Outstanding, Beginning">1,111,363</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20220101__20221231_zk2AcgXgmtJ3" style="text-align: right" title="Weighted Average Exercise Price Outstanding, Beginning">2.12</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20220101__20221231_zjInKmA0dMTe" style="text-align: right" title="Weighted Average Fair Value Outstanding, Beginning">1.31</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_c20220101__20221231_z5FBgPgVdjsh" style="text-align: right" title="Number of Options Outstanding, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1252">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zodQd860ouGg" style="text-align: right" title="Weighted Average Exercise Price, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1254">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20220101__20221231_zJUkPQL4NJwh" style="text-align: right" title="Weighted Average Fair Value, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1256">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_c20220101__20221231_zhFFAtW5zTae" style="text-align: right" title="Number of Options Outstanding, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1258">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_c20220101__20221231_zjPS2hiTgCh6" style="text-align: right" title="Weighted Average Exercise Price, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1260">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_c20220101__20221231_zCqNK3wWDpXh" style="text-align: right" title="Weighted Average Fair Value, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1262">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Forfeited/Cancelled</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_c20220101__20221231_zHUUaMJpCdYh" style="text-align: right" title="Number of Options Outstanding, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1264">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_c20220101__20221231_zRUk3W6hhVI8" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1266">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_c20220101__20221231_zUyrkgvRmw2a" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1268">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_982_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_di_c20220101__20221231_zKHpqEMoJre4" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Options Outstanding, Exercised">(70,791</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zXw1rlKCHEfe" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised">1.10</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_985_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised_pid_c20220101__20221231_zEeDOOsIJpUi" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised">0.51</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Outstanding at December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_c20220101__20221231_ztBpzDGj1KIb" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Options Outstanding, Ending">1,040,572</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_pid_c20220101__20221231_zM7nlYIox1r7" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Exercise Price Outstanding, Ending">2.19</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_98E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231_zh6Xy9HXO3h7" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Fair Value Outstanding, Ending">1.37</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; text-align: right"><span id="xdx_902_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm_dtY_c20220101__20221231_zZjhpbzX2xo7" title="Weighted-average Remaining Contractual Life (years) Outstanding, Ending">5.88</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Exercisable at December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_c20220101__20221231_zfD15avwOGL1" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Options Exercisable Ending">1,040,572</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_iE_pid_c20220101__20221231_z62yJHkW9Ii9" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Exercise Price, Exercisable Ending">2.19</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_981_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable_iE_pid_c20220101__20221231_zicDaWEAxMB9" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Fair Value, Exercisable Ending">1.37</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; text-align: right"><span id="xdx_906_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_dtY_c20220101__20221231_zLgkXNayJ8n7" title="Weighted-average Remaining Contractual Life (years), Exercisable Ending">5.88</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock', window );">Schedule of Outstanding Restricted Stock Units and Related Activity</a></td>
<td class="text"><p id="xdx_894_eus-gaap--ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_zUCHLGJY8Ayh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
grant date fair value of RSUs granted is determined using the closing market price of the Company&#8217;s common stock on the grant date
with the associated compensation expense amortized over the vesting period of the awards. The following table sets forth the outstanding
RSUs and related activity for the years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B4_zaWAWQdBhK0d" style="display: none">Schedule of Outstanding Restricted Stock Units and Related Activity</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Number of RSUs</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Grant Date Fair Value</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 60%">Unvested at December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iS_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zAcGCtZdl6K4" style="width: 16%; text-align: right" title="Number of Restricted Stock Units, Outstanding Beginning">522,500</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zfaraZnqnNIe" style="width: 16%; text-align: right" title="Weighted Average Grant Date Fair Value, Outstanding Beginning">10.49</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zyJeREGNgYUd" style="text-align: right" title="Number of Restricted Stock Units, Granted">1,217,500</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zdRW3eOeTJc6" style="text-align: right" title="Weighted Average Grant Date Fair Value, Granted">9.76</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Vested</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_iN_di_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zWGnePFfQHc5" style="text-align: right" title="Number of Restricted Stock Units, Vested">(438,502</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zVA8TI2EtO67" style="text-align: right" title="Weighted Average Grant Date Fair Value, Vested">10.10</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Forfeited/Cancelled</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_iN_di_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zWPzKyhi0tfg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Restricted Stock Units, Forfeited/Cancelled">(34,083</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z2vLdz6kWfQi" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Grant Date Fair Value, Forfeited/Cancelled">9.91</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td>Unvested at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iS_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zNfdlgokbHU6" style="text-align: right" title="Number of Restricted Stock Units, Outstanding Beginning">1,267,415</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z2qQgf9Zm1U7" style="text-align: right" title="Weighted Average Grant Date Fair Value, Outstanding Beginning">9.94</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z7uz8Xx1gkqf" style="text-align: right" title="Number of Restricted Stock Units, Granted">1,925,476</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z0SjFPXtRXh4" style="text-align: right" title="Weighted Average Grant Date Fair Value, Granted">5.66</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Vested</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_iN_di_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z3nQ9tx0OeBe" style="text-align: right" title="Number of Restricted Stock Units, Vested">(725,166</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zjFyOyYUs0Y2" style="text-align: right" title="Weighted Average Grant Date Fair Value, Vested">8.66</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Forfeited/Cancelled</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_iN_di_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zwsvr7Az7XU2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Restricted Stock Units, Forfeited/Cancelled">(41,000</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zhWA30WQpcU8" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Grant Date Fair Value, Forfeited/Cancelled">8.31</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt">Unvested at December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iE_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zGAPwCFupTf9" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Restricted Stock Units, Outstanding Ending">2,426,725</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zEopSoyFCzE8" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Grant Date Fair Value, Outstanding Ending">7.06</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock', window );">Schedule of Warrant Activity</a></td>
<td class="text"><p id="xdx_891_eus-gaap--ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock_znvjaERswV0h" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
following table summarizes warrant activity during the years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B5_zLyr3BCph05c" style="display: none">Schedule of Warrant Activity</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Number of Warrants</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Exercise Price</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Fair Value</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Weighted Average Remaining Contractual Life (Years)</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 44%">Outstanding at December 31, 2020</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iS_c20210101__20211231_z1UryfnyDDHe" style="width: 10%; text-align: right" title="Number of Warrants Outstanding, Beginning">70,000</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_980_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zaIJa6UuoTC3" style="width: 10%; text-align: right" title="Weighted Average Exercise Price, Beginning">1.83</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98D_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_iS_pid_c20210101__20211231_zYf1Ny4dm4R" style="width: 10%; text-align: right" title="Weighted Average fair value, Beginning">5.21</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 10%; text-align: right"><span id="xdx_90E_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1_dtY_c20210101__20211231_zlUOD9z4uvy8" title="Weighted-average Remaining Contractual Life (Years) Outstanding">3.3</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_c20210101__20211231_zTriLyHQRKJ6" style="text-align: right" title="Number of Warrants Outstanding, Granted">456,281</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zt5kJf6iG9H6" style="text-align: right" title="Weighted Average Exercise Price, Granted">9.13</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98E_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zOVk1LlTH5Q4" style="text-align: right" title="Weighted Average Fair Value, Granted">3.83</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations_iN_di_c20210101__20211231_zKCoV4BNwDWk" style="text-align: right" title="Number of Warrants Outstanding, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1358">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_984_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zA9x2zWsaZY6" style="text-align: right" title="Weighted Average Exercise Price, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1360">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zoN2jHgEnoOa" style="text-align: right" title="Weighted Average Fair Value, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1362">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Forfeited/Cancelled</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures_c20210101__20211231_zzD4fMIdEfud" style="text-align: right" title="Number of Warrants Outstanding, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1364">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zATzHGCLpXYd" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1366">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98A_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_pid_c20210101__20211231_z6w7ir4SrMke" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1368">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_iN_di_c20210101__20211231_zaQ7Z4fRw3w1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Warrants Outstanding, Exercised"><span style="-sec-ix-hidden: xdx2ixbrl1370">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_98F_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zL6mmTDP5Rvd" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised"><span style="-sec-ix-hidden: xdx2ixbrl1372">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_983_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zMoVbjvpY4Cl" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised"><span style="-sec-ix-hidden: xdx2ixbrl1374">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td>Outstanding at December 31, 2021</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iS_c20220101__20221231_z4LNwiJ8Hlrh" style="text-align: right" title="Number of Warrants Outstanding, Beginning">526,281</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_98A_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20220101__20221231_zTlAoB4JXGkj" style="text-align: right" title="Weighted Average Exercise Price, Beginning">8.15</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">$</td><td id="xdx_989_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_iS_pid_c20220101__20221231_z3UOFMYcplia" style="text-align: right" title="Weighted Average fair value, Beginning">4.01</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span id="xdx_90F_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_dtY_c20210101__20211231_zAwyRqRKgR9b" title="Weighted-average Remaining Contractual Life (Years) Outstanding">4.7</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 10pt">Issued for adjustments to contingent purchase consideration</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_ecustom--ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration_c20220101__20221231_zuDdzMzeQzbj" style="text-align: right" title="Number of Warrants Outstanding, Issued">8,719</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_989_ecustom--IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zsY7bVN439Fh" style="text-align: right" title="Weighted Average Exercise Price, Issued">9.13</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zSf2rOkqqgw8" style="text-align: right" title="Weighted Average Fair Value, Issued">1.88</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Granted</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_c20220101__20221231_zXZwj3pdTic6" style="text-align: right" title="Number of Warrants Outstanding, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1390">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zucEClSrwDZd" style="text-align: right" title="Weighted Average Exercise Price, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1392">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zB5RSHYLSyZ1" style="text-align: right" title="Weighted Average Fair Value, Granted"><span style="-sec-ix-hidden: xdx2ixbrl1394">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 10pt">Expired</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations_iN_di_c20220101__20221231_z5GxYKmAJ3P8" style="text-align: right" title="Number of Warrants Outstanding, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1396">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98F_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zYiZHrKY7SM7" style="text-align: right" title="Weighted Average Exercise Price, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1398">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zOKkDIjzHOS5" style="text-align: right" title="Weighted Average Fair Value, Expired"><span style="-sec-ix-hidden: xdx2ixbrl1400">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-left: 10pt">Forfeited/Cancelled</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures_c20220101__20221231_z2qdU3avusLj" style="text-align: right" title="Number of Warrants Outstanding, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1402">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_982_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zBNUiX9IRRs7" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1404">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_987_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zP1dJTyFXN07" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"><span style="-sec-ix-hidden: xdx2ixbrl1406">-</span></td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 10pt">Exercised</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_iN_di_c20220101__20221231_zWITLqpQoaUi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Warrants Outstanding, Exercised">(50,000</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_98B_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_z0jqMG6hDjs2" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised">2.00</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td id="xdx_98C_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zfQ85BjLHTO2" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised">1.22</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 2.5pt">Outstanding at December 31, 2022</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iE_c20220101__20221231_zoSCXGIeCqCi" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Warrants Outstanding, Ending">485,000</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_980_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice_iE_pid_c20220101__20221231_zdDYQh9v5Exl" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Exercise Price, Ending">8.81</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">$</td><td id="xdx_988_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231_zZQVy6ukPVG1" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Fair Value, Ending">2.43</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt; text-align: right"><span id="xdx_909_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_dtY_c20220101__20221231_zt4bPrPcYrsk" title="Weighted-average Remaining Contractual Life (Years) Outstanding">4.0</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_ScheduleOfShareBasedCompensationActivityTableTextBlock', window );">Schedule of Recognized Stock-based Compensation Expense</a></td>
<td class="text"><p id="xdx_891_eus-gaap--ScheduleOfShareBasedCompensationActivityTableTextBlock_zs6xlJlFwo7b" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
Company recognized stock-based compensation expense related to the types of awards discussed above as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BF_zXucSKiIchDl" style="display: none">Schedule of Recognized
Stock-based Compensation Expense</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20220101__20221231_zVCYSlFIIuG7" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_499_20210101__20211231_zpsBsMggoHH1" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Years Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--EmployeeStockOptionMember_zBxGRGPK80W2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; padding-left: 0pt">Options</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">78,115</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">292,754</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zjYcvU2Apzqj" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Restricted stock units</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">7,465,108</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">5,164,750</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_400_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--StockCompensationPlanMember_zHKzJbSWcZ49" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Stock</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1444">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">51,900</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--AllocatedShareBasedCompensationExpense_zCqX0PaJtA7a" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 2.5pt; text-indent: 10pt; padding-left: 0pt">Total stock-based compensation expense</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">7,543,223</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">5,509,404</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="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_ScheduleOfShareBasedCompensationActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 activity for award under share-based payment arrangement. Includes, but is not limited to, outstanding award at beginning and end of year, granted, exercised, forfeited, and weighted-average grant date fair value.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited during the year.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 warrants or rights issued. Warrants and rights outstanding are derivative securities that give the holder the right to purchase securities (usually equity) from the issuer at a specific price within a certain time frame. Warrants are often included in a new debt issue to entice investors by a higher return potential. The main difference between warrants and call options is that warrants are issued and guaranteed by the company, whereas options are exchange instruments and are not issued by the company. Also, the lifetime of a warrant is often measured in years, while the lifetime of a typical option is measured in months. Disclose the title of issue of securities called for by warrants and rights outstanding, the aggregate amount of securities called for by warrants and rights outstanding, the date from which the warrants or rights are exercisable, and the price at which the warrant or right is exercisable.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 50<br> -Section S99<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6784392&amp;loc=d3e188667-122775<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock</td>
</tr>
<tr>
<td style="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>44
<FILENAME>R32.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367631111744">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Schedule of Components Income Tax Provision</a></td>
<td class="text"><p id="xdx_89B_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_zKoRoXiLLDWe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The
components of the provision for income taxes consists of the following for the years ended December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BE_zTRMQlv4Nzha" style="display: none">Schedule
of Components Income Tax Provision</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20220101__20221231_zMfuosEX12H9" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49B_20210101__20211231_zXrSkdX7bf1a" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Year Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_iB_zItKkEmAOVHf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Current:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--CurrentFederalTaxExpenseBenefit_i01_maCFSALzO40_zglWyXf1pJHf" style="vertical-align: bottom; background-color: White">
    <td style="width: 64%; text-indent: 10pt; padding-left: 0pt">Federal</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">563,821</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">6,092,730</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_i01_maCFSALzO40_z3AACDdV9osl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">State</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(266,248</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">886,173</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--CurrentFederalStateAndLocalTaxExpenseBenefit_i01T_mtCFSALzO40_maITEBzvit_zfelvOywAXs2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total current</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">297,573</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">6,978,903</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_iB_z1ZXQed8MgS4" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Deferred:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--DeferredFederalIncomeTaxExpenseBenefit_i01_maDFSALzrPD_zphTuVY7To89" style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 10pt; padding-left: 0pt">Federal</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(3,945,090</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1,394,686</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_i01_maDFSALzrPD_zBtTtG9NtUzl" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt">State</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(961,468</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">603,642</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--DeferredFederalStateAndLocalTaxExpenseBenefit_i01T_mtDFSALzrPD_maITEBzvit_zbkM8D9mxFNl" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total deferred</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(4,906,558</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,998,328</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--IncomeTaxExpenseBenefit_iT_mtITEBzvit_zGexWbgHqUKa" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Total income tax (benefit) expense</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(4,608,985</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">8,977,231</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Schedule of Benefit from Income Taxes and Effective Tax Rates</a></td>
<td class="text"><p id="xdx_89F_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zvGIDloIP8f2" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">A
reconciliation of income tax expense at the statutory federal income tax rate and income taxes as reflected in the financial statements
is as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B0_z1pUq1ZZtIE5" style="display: none">Schedule
of Benefit from Income Taxes and Effective Tax Rates</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49C_20220101__20221231_zo6S7rTZAeHc" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_49B_20210101__20211231_zDtONAgXNDDb" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Year Ended December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_dp_uPure_zhCcAQmNpf4f" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left; padding-left: 0pt">Federal income tax expense at statutory rate</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">21.0</td><td style="width: 1%; text-align: left">%</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">&#160;</td><td style="width: 14%; text-align: right">21.0</td><td style="width: 1%; text-align: left">%</td></tr>
  <tr id="xdx_408_eus-gaap--EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_dp_uPure_zMkOhSV2TCFk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">State income tax expense, net of federal tax benefit</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">4.8</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3.9</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_403_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract_iB_zpxYfuAK1Yuf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Permanent differences:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_ecustom--EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction_i01_dp_uPure_zltzT5wCqclg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">- Foreign derived intangible income deduction</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1.4</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-3.5</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_408_eus-gaap--EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent_i01_dp_uPure_z43W7ezcyEC2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">- Stock based compensation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-3.6</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.2</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40E_ecustom--EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement_i01_dp_uPure_zq1YzxyBEGM8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">- Contingent consideration remeasurement</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">8.8</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.0</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_404_ecustom--EffectiveIncomeTaxRateReconciliationGoodwillImpairment_i01_dp_uPure_zD3imPA8Za5j" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">- Goodwill impairment</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-17.1</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.0</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_i01_dp_uPure_zOmNw1RC5HSg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">- Other permanent differences</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-0.6</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.3</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40C_eus-gaap--EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment_iN_dpi_uPure_z1k6PHrC4Jlj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Research and development credits</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">11.1</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-2.6</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40B_ecustom--EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance_dp_uPure_znriT6IQMKBk" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-left: 0pt">Change in uncertain tax positions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">-2.1</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">1.4</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40F_eus-gaap--EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_dp_uPure_zjJrPFNgEeSj" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Change in valuation allowance</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.0</td><td style="text-align: left">%</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">0.0</td><td style="text-align: left">%</td></tr>
  <tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherAdjustments_dp_uPure_zS8YrT1MUdQ" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Other</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">0.8</td><td style="padding-bottom: 1.5pt; text-align: left">%</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">-1.0</td><td style="padding-bottom: 1.5pt; text-align: left">%</td></tr>
  <tr id="xdx_40F_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_dp_uPure_zXuqfck6KiV6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Effective income tax rate</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">24.5</td><td style="padding-bottom: 2.5pt; text-align: left">%</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td style="border-bottom: Black 2.5pt double; text-align: right">19.7</td><td style="padding-bottom: 2.5pt; text-align: left">%</td></tr>
  </table>

<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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Schedule of Deferred Tax Assets</a></td>
<td class="text"><p id="xdx_896_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_zAB1TlhM3wk3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Net
deferred tax liabilities consist of the following components as of December 31, 2022 and 2021:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8BA_z7Dfq5a2jRta" style="display: none">Schedule
of Deferred Tax Assets</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="display: none; vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_493_20221231_z2gSbIutjuYg" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_497_20211231_zz3TgbMP9qFf" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--DeferredTaxAssetsGrossAbstract_iB_z1N2A1soq1N6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Deferred tax assets:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_401_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_i01I_maDTAGzwm0_zASVEMrzwZp" style="vertical-align: bottom; background-color: White">
    <td style="width: 64%; text-align: left; text-indent: 20pt; padding-left: 0pt">Accrued liabilities</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right">98,141</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 14%; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1528">-</span></td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_i01I_maDTAGzwm0_zLa8qYxc8Ky8" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Reserves and allowances</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">765,004</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">166,050</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits_i01I_maDTAGzwm0_zrLS0S8rsvZg" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Deferred compensation</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">566,076</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">393,871</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--DeferredTaxAssetsInProcessResearchAndDevelopment_i01I_maDTAGzwm0_zCKLBeVcGQyi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Research and development credits</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">3,460,159</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1537">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40D_ecustom--DeferredTaxAssetsLeaseLiability_i01I_maDTAGzwm0_zpheh1OWtpu5" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Lease liability</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">85,899</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1540">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_ecustom--DeferredTaxAssetsUniformCapitalization_i01I_maDTAGzwm0_zH8nlHNsfK67" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt">UNICAP</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">168,936</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1543">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_408_eus-gaap--DeferredTaxAssetsGross_i01TI_mtDTAGzwm0_maDTAOzex8_zvK9k46gnL36" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total deferred tax assets</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">5,144,215</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">559,921</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--DeferredTaxLiabilitiesAbstract_iB_zEj7ajrmWG8j" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Deferred tax liabilities:</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">&#160;</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--DeferredTaxLiabilitiesPropertyPlantAndEquipment_i01NI_di_maDITLzLIF_zR2hg1rMK0D8" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Property and equipment, net</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(609,261</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(477,542</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_404_eus-gaap--DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_i01NI_di_maDITLzLIF_zwAuSyLfWLWi" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Intangibles, net</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(6,608,914</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(6,743,972</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_40F_eus-gaap--DeferredTaxLiabilitiesPrepaidExpenses_i01NI_di_maDITLzLIF_zs2ZvHpL9DQ7" style="vertical-align: bottom; background-color: White">
    <td style="text-indent: 20pt; padding-left: 0pt">Prepaids</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(156,053</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(560,093</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_403_ecustom--DeferredTaxLiabilitiesRightOfUseAsset_i01I_maDITLzLIF_zBYSAS3xGyOg" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Right of use asset</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(91,873</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1561">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--DeferredTaxLiabilitiesOtherComprehensiveIncome_i01NI_di_maDITLzLIF_zZ6iFpTVjfaa" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 20pt; padding-left: 0pt">Other comprehensive income</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(96,101</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1564">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--DeferredTaxLiabilitiesOther_i01NI_di_maDITLzLIF_zIuQyMqsui3c" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt">Other</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1566">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(6,758</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_40D_eus-gaap--DeferredIncomeTaxLiabilities_i01NTI_di_mtDITLzLIF_msDTAOzex8_zPHFnstnzBP9" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Total deferred tax liabilities</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(7,562,202</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">(7,788,365</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr id="xdx_409_ecustom--NetDeferredTaxLiabilities_i01I_mtDTAOzex8_maDTANzqQW_z268iDeeNNPd" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Net deferred tax (liabilities)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(2,417,987</td><td style="text-align: left">)</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">(7,228,444</td><td style="text-align: left">)</td></tr>
  <tr id="xdx_400_eus-gaap--DeferredTaxAssetsValuationAllowance_iI_msDTANzqQW_z6QCumMw7iTl" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Less valuation allowance</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1575">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1576">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_407_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_di_mtDTANzqQW_zskQxiyPiP5b" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt">Net deferred tax (liabilities)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(2,417,987</td><td style="padding-bottom: 2.5pt; text-align: left">)</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td style="border-bottom: Black 2.5pt double; text-align: right">(7,228,444</td><td style="padding-bottom: 2.5pt; text-align: left">)</td></tr>
  </table>

<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_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock', window );">Schedule of Unrecognized Tax Benefits</a></td>
<td class="text"><p id="xdx_895_eus-gaap--ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_zrqHktq4Hxbc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_8B5_zTVlaz4tFVT9" style="display: none">Schedule
of Unrecognized Tax Benefits</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td style="font-weight: bold; text-align: center">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 64%; text-align: left">Unrecognized tax benefits at the beginning of the year</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_985_eus-gaap--UnrecognizedTaxBenefits_iS_c20220101__20221231_zEsfTxOY0DAj" style="width: 14%; text-align: right" title="Unrecognized tax benefits at the beginning of the year">1,067,853</td><td style="width: 1%; text-align: left">&#160;</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td id="xdx_98E_eus-gaap--UnrecognizedTaxBenefits_iS_c20210101__20211231_zoVcKY5Nt9t9" style="width: 14%; text-align: right" title="Unrecognized tax benefits at the beginning of the year">447,831</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Gross increases - current year tax positions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_c20220101__20221231_zksi0q1t2Svf" style="text-align: right" title="Gross increases- current year tax positions">1,045,590</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_980_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_c20210101__20211231_znCPLez0B4a2" style="text-align: right" title="Gross increases - current year tax positions">770,069</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Gross increases - prior year tax positions</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_98B_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_c20220101__20221231_zNtX4s5UWUK3" style="text-align: right" title="Gross increases- prior year tax positions">34,035</td><td style="text-align: left">&#160;</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_981_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_c20210101__20211231_zamsyOPTI7vf" style="text-align: right" title="Gross increases - prior year tax positions"><span style="-sec-ix-hidden: xdx2ixbrl1605">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Gross decreases - prior year tax positions</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98F_eus-gaap--UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_iN_di_c20220101__20221231_z0MvwCAHaza7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gross decreases - prior year tax positions">(677,901</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_iN_di_c20210101__20211231_zAREE8LQLtUa" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gross decreases- prior year tax positions">(150,047</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Unrecognized tax benefits at end of year</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_980_eus-gaap--UnrecognizedTaxBenefits_iE_c20220101__20221231_zQcqtjFCvGwk" style="border-bottom: Black 2.5pt double; text-align: right" title="Unrecognized tax benefits at end of year">1,469,577</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98B_eus-gaap--UnrecognizedTaxBenefits_iE_c20210101__20211231_zq46nvqtlKRf" style="border-bottom: Black 2.5pt double; text-align: right" title="Unrecognized tax benefits at end of year">1,067,853</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">&#160;</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-bottom: 2.5pt">Interest and penalties in year-end balance</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_986_eus-gaap--UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued_iE_c20220101__20221231_zh2IVKFrFj76" style="border-bottom: Black 2.5pt double; text-align: right" title="Interest and penalties in year-end balance">34,035</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">$</td><td id="xdx_98C_eus-gaap--UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued_iE_c20210101__20211231_zfFsMs88rjX8" style="border-bottom: Black 2.5pt double; text-align: right" title="Interest and penalities in year- end balance"><span style="-sec-ix-hidden: xdx2ixbrl1617">-</span></td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="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_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 change in unrecognized tax benefits.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 55<br> -Paragraph 217<br> -URI https://asc.fasb.org/extlink&amp;oid=126976462&amp;loc=d3e36027-109320<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock</td>
</tr>
<tr>
<td style="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>45
<FILENAME>R33.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367633488464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseCostTableTextBlock', window );">Schedule of Lease Expense</a></td>
<td class="text"><p id="xdx_89B_eus-gaap--LeaseCostTableTextBlock_zlQL63nnZNWh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For
the year ended December 31, 2022, components of lease expense are summarized as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B5_z7huRpqAonJh" style="display: none">Schedule
of Lease Expense</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_494_20220101__20221231_zTcAfbvmNrI2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Year Ended December, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--OperatingLeaseCost_maLCz2lp_zMXzVg0SZvx9" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 76%; text-align: left">Operating lease costs</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 18%; text-align: right">346,349</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40E_eus-gaap--ShortTermLeaseCost_maLCz2lp_zMjLJbrcEqcd" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt">Short-term lease costs</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">384,902</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40C_eus-gaap--LeaseCost_iT_mtLCz2lp_zGCbsXJUdfU2" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Total lease costs</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">731,251</td><td style="text-align: left">&#160;</td></tr>
  </table>

<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_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Schedule of Maturities on Company Lease Liabilities</a></td>
<td class="text"><p id="xdx_891_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_zSWWHFoYGwvk" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As
of December 31, 2022, the maturities of the Company&#8217;s lease liabilities are as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8BD_zq2nGaCFCop3" style="display: none">Schedule
of Maturities on Company Lease Liabilities</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_493_20221231_z4QbVlVKyTsa" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Year Ending<br/>
 December 31,</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_409_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_maLOLLPz8za_zycEIygeanf6" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 78%; text-align: left; text-indent: 10pt; padding-left: 0pt">2023</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 18%; text-align: right">303,059</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_maLOLLPz8za_zX6di43brZH4" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">2024</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">50,773</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_maLOLLPz8za_zGy967EVcyUc" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">2025</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1635">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_403_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFour_iI_maLOLLPz8za_zm8H47QkU1Y2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">2026</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1637">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFive_iI_maLOLLPz8za_z7a4Mm5xQUte" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; text-indent: 10pt; padding-left: 0pt">2027</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1639">-</span></td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_iI_maLOLLPz8za_zzK7zvgiQnw" style="vertical-align: bottom; background-color: White">
    <td style="padding-bottom: 1.5pt; padding-left: 0pt">Thereafter</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="-sec-ix-hidden: xdx2ixbrl1641">-</span></td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_mtLOLLPz8za_zwo0TqAU3Evf" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Total lease payments</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">353,832</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_406_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iI_zb5o7ZqzxmL2" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Less: imputed interest</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">5,915</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--OperatingLeaseLiability_iI_zf1fF5vvsNHk" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Present value of operating lease liabilities</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right">347,917</td><td style="text-align: left">&#160;</td></tr>
  <tr id="xdx_40A_eus-gaap--OperatingLeaseLiabilityCurrent_iI_z1WsKphfMc6f" style="vertical-align: bottom; background-color: White">
    <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Less: current portion</td><td style="padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; text-align: left">&#160;</td><td style="border-bottom: Black 1.5pt solid; text-align: right">297,209</td><td style="padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr id="xdx_40F_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_zLHpE3gaIC77" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left; padding-left: 0pt">Long-term portion</td><td>&#160;</td>
    <td style="text-align: left">$</td><td style="text-align: right">50,708</td><td style="text-align: left">&#160;</td></tr>
  </table>

<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_CODX_ScheduleOfOperatingLeaseTableTextBlock', window );">Schedule of Other Information Related to Operating Lease</a></td>
<td class="text"><p id="xdx_89C_ecustom--ScheduleOfOperatingLeaseTableTextBlock_zMRwjQM566vb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Other
information related to operating leases was as follows:</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B7_zix7S5fGXOS5" style="display: none">Schedule
of Other Information Related to Operating Lease</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" id="xdx_492_20220101__20221231_zEqQ9PdyNeo7" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"><p style="margin-top: 0pt; margin-bottom: 0pt">Year Ended</p>
                                                                                <p style="margin-top: 0pt; margin-bottom: 0pt">December 31, 2022</p></td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr id="xdx_404_eus-gaap--OperatingLeasePayments_zoRrBGesqn98" style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="width: 80%; text-align: left">Cash paid for operating leases included in operating cash flows</td><td style="width: 2%">&#160;</td>
    <td style="width: 1%; text-align: left">$</td><td style="width: 16%; text-align: right">700,821</td><td style="width: 1%; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="text-align: left">Remaining lease term of operating leases</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><span id="xdx_90B_eus-gaap--OperatingLeaseWeightedAverageRemainingLeaseTerm1_iI_dtY_c20221231_zCNZF9oIpUY2" title="Remaining lease term of operating leases">1</span> year </span></td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="text-align: left">Discount rate of operating leases</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_986_eus-gaap--OperatingLeaseWeightedAverageDiscountRatePercent_iI_pid_dp_uPure_c20221231_ziIXv7lI6Cui" style="text-align: right" title="Discount rate of operating leases">3.1</td><td style="text-align: left">%</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_ScheduleOfOperatingLeaseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of Operating Lease [Table Text Block]</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;">CODX_ScheduleOfOperatingLeaseTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="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_LeaseCostTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseCostTableTextBlock</td>
</tr>
<tr>
<td style="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_LesseeOperatingLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="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>46
<FILENAME>R34.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367626194144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share Repurchase Program (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><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_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></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_CODX_ScheduleOfTreasuryStockTableTextBlock', window );">Schedule of Treasury Stock</a></td>
<td class="text"><p id="xdx_898_ecustom--ScheduleOfTreasuryStockTableTextBlock_zYQspkJigVXa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">&#160;<span id="xdx_8B0_zH3E0U3QxiLa" style="display: none">Schedule
of Treasury Stock</span></span></p>

<table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%">
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold">&#160;</td>
    <td colspan="2" style="font-weight: bold; text-align: center">Year Ended</td><td style="font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td><td style="font-weight: bold; padding-bottom: 1.5pt">&#160;</td>
    <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">December 31, 2022</td><td style="padding-bottom: 1.5pt; font-weight: bold">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-left: 0pt">Balance, beginning of period</td><td>&#160;</td>
    <td style="text-align: left">&#160;</td><td id="xdx_988_eus-gaap--TreasuryStockShares_iS_pid_d0_c20220101__20221231_zeHFyhMipQ02" style="text-align: right" title="Treasury stock, Beginning Balance">-</td><td style="text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: White">
    <td style="width: 76%; text-align: left; padding-bottom: 1.5pt; padding-left: 0pt">Repurchases of common stock</td><td style="width: 2%; padding-bottom: 1.5pt">&#160;</td>
    <td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left">&#160;</td><td id="xdx_985_ecustom--RepurchasesOfCommonStock_c20220101__20221231_zarCr1EhmVM6" style="border-bottom: Black 1.5pt solid; width: 20%; text-align: right" title="Repurchases of common stock">3,881,658</td><td style="width: 1%; padding-bottom: 1.5pt; text-align: left">&#160;</td></tr>
  <tr style="vertical-align: bottom; background-color: rgb(204,238,255)">
    <td style="padding-bottom: 2.5pt; text-indent: 10pt; padding-left: 0pt">Balance, end of period</td><td style="padding-bottom: 2.5pt">&#160;</td>
    <td style="border-bottom: Black 2.5pt double; text-align: left">&#160;</td><td id="xdx_98C_eus-gaap--TreasuryStockShares_iE_pid_c20220101__20221231_zOIbxlcTu7n7" style="border-bottom: Black 2.5pt double; text-align: right" title="Treasury stock, Ending Balance">3,881,658</td><td style="padding-bottom: 2.5pt; text-align: left">&#160;</td></tr>
  </table>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_ScheduleOfTreasuryStockTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of Treasury Stock [Table Text Block]</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;">CODX_ScheduleOfTreasuryStockTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EquityAbstract</td>
</tr>
<tr>
<td style="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>47
<FILENAME>R35.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367624471440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Jan. 02, 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_ProductInformationLineItems', window );"><strong>Product Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableGrossCurrent', window );">Accounts receivable, before allowance for credit loss, current</a></td>
<td class="nump">$ 6,552,249<span></span>
</td>
<td class="nump">$ 21,508,779<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_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Uncollectable accounts</a></td>
<td class="nump">3,098,526<span></span>
</td>
<td class="nump">669,597<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, after allowance for credit loss, current</a></td>
<td class="nump">3,453,723<span></span>
</td>
<td class="nump">20,839,182<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 );">Inventory, net</a></td>
<td class="nump">5,310,473<span></span>
</td>
<td class="nump">2,004,169<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_InventoryFinishedGoods', window );">Inventory, finished goods, gross</a></td>
<td class="nump">1,327,264<span></span>
</td>
<td class="nump">983,088<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_InventoryRawMaterials', window );">Inventory, raw materials, gross</a></td>
<td class="nump">3,983,209<span></span>
</td>
<td class="nump">1,021,081<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_AssetImpairmentCharges', window );">Impairment charges</a></td>
<td class="nump">15,388,546<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_ResearchAndDevelopmentExpense', window );">Research and development costs</a></td>
<td class="nump">17,438,098<span></span>
</td>
<td class="nump">14,961,916<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_OperatingLeaseLiability', window );">Operating lease liability</a></td>
<td class="nump">347,917<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_OperatingLeaseRightOfUseAsset', window );">Operating right use of asset</a></td>
<td class="nump">$ 372,115<span></span>
</td>
<td class="text"> <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_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201602Member', window );">Accounting Standards Update 2016-02 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductInformationLineItems', window );"><strong>Product Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Operating lease liability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 626,699<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_OperatingLeaseRightOfUseAsset', window );">Operating right use of asset</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 681,327<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_MajorCustomersAxis=CODX_CustomersMember', window );">Customers [Member] | Customer Concentration Risk [Member] | Accounts Receivable [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductInformationLineItems', window );"><strong>Product Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk percentage</a></td>
<td class="nump">10.00%<span></span>
</td>
<td class="nump">10.00%<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_srt_MajorCustomersAxis=CODX_OneCustomerMember', window );">One Customer [Member] | Customer Concentration Risk [Member] | Revenue Benchmark [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductInformationLineItems', window );"><strong>Product Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk percentage</a></td>
<td class="nump">37.00%<span></span>
</td>
<td class="nump">37.00%<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_srt_MajorCustomersAxis=CODX_TwoCustomersTogetherMember', window );">Two Customers Together [Member] | Customer Concentration Risk [Member] | Revenue Benchmark [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductInformationLineItems', window );"><strong>Product Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk percentage</a></td>
<td class="nump">48.00%<span></span>
</td>
<td class="nump">48.00%<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_srt_MajorCustomersAxis=CODX_FourCustomersMember', window );">Four Customers [Member] | Customer Concentration Risk [Member] | Accounts Receivable [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductInformationLineItems', window );"><strong>Product Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk percentage</a></td>
<td class="nump">10.00%<span></span>
</td>
<td class="nump">10.00%<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_srt_MajorCustomersAxis=CODX_CustomersTogetherMember', window );">Customers Together [Member] | Customer Concentration Risk [Member] | Accounts Receivable [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductInformationLineItems', window );"><strong>Product Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk percentage</a></td>
<td class="nump">61.00%<span></span>
</td>
<td class="nump">66.00%<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_us-gaap_AccountsReceivableGrossCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableGrossCurrent</td>
</tr>
<tr>
<td style="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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AssetImpairmentCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 write-down of assets recognized in the income statement. Includes, but is not limited to, losses from tangible assets, intangible assets and goodwill.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126905981&amp;loc=d3e2420-110228<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetImpairmentCharges</td>
</tr>
<tr>
<td style="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_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13531-108611<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13537-108611<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="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:percentItemType</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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="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_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 lessee's right to use underlying asset under operating lease.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="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_ProductInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductInformationLineItems</td>
</tr>
<tr>
<td style="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_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 730<br> -Section 25<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6472174&amp;loc=d3e58812-109433<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 730<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="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_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201602Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201602Member</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_MajorCustomersAxis=CODX_CustomersMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MajorCustomersAxis=CODX_CustomersMember</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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</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_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember</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_MajorCustomersAxis=CODX_OneCustomerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MajorCustomersAxis=CODX_OneCustomerMember</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_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</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_MajorCustomersAxis=CODX_TwoCustomersTogetherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MajorCustomersAxis=CODX_TwoCustomersTogetherMember</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_MajorCustomersAxis=CODX_FourCustomersMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MajorCustomersAxis=CODX_FourCustomersMember</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_MajorCustomersAxis=CODX_CustomersTogetherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MajorCustomersAxis=CODX_CustomersTogetherMember</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>48
<FILENAME>R36.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367624223200">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Cash, Cash Equivalents, and Marketable Investment Securities (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [Line Items]</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_TradingSecuritiesDebtAmortizedCost', window );">Adjusted Cost</a></td>
<td class="nump">$ 80,873,628<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_FinancingReceivableAllowanceForCreditLosses', window );">Allowance for Credit Losses</a></td>
<td class="text"> <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_MarketableSecuritiesUnrealizedGainLoss', window );">Total Unrealized Gains / (Losses)</a></td>
<td class="nump">389,241<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_TradingSecurities', window );">Fair Value</a></td>
<td class="nump">81,262,869<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">22,973,803<span></span>
</td>
<td class="nump">$ 88,607,234<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_MarketableSecurities', window );">Marketable Securities</a></td>
<td class="nump">58,289,066<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Fair Value, Inputs, Level 1 [Member]</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_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [Line Items]</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_TradingSecuritiesDebtAmortizedCost', window );">Adjusted Cost</a></td>
<td class="nump">146,359<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_FinancingReceivableAllowanceForCreditLosses', window );">Allowance for Credit Losses</a></td>
<td class="text"> <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_MarketableSecuritiesUnrealizedGainLoss', window );">Total Unrealized Gains / (Losses)</a></td>
<td class="text"> <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_TradingSecurities', window );">Fair Value</a></td>
<td class="nump">146,359<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">146,359<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_MarketableSecurities', window );">Marketable Securities</a></td>
<td class="text"> <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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Fair Value, Inputs, Level 2 [Member]</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_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [Line Items]</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_TradingSecuritiesDebtAmortizedCost', window );">Adjusted Cost</a></td>
<td class="nump">67,892,825<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_FinancingReceivableAllowanceForCreditLosses', window );">Allowance for Credit Losses</a></td>
<td class="text"> <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_MarketableSecuritiesUnrealizedGainLoss', window );">Total Unrealized Gains / (Losses)</a></td>
<td class="nump">389,241<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_TradingSecurities', window );">Fair Value</a></td>
<td class="nump">68,282,066<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">9,993,000<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_MarketableSecurities', window );">Marketable Securities</a></td>
<td class="nump">58,289,066<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_CashAndCashEquivalentsAxis=us-gaap_CashMember', window );">Cash [Member]</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_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [Line Items]</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_TradingSecuritiesDebtAmortizedCost', window );">Adjusted Cost</a></td>
<td class="nump">12,834,444<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_FinancingReceivableAllowanceForCreditLosses', window );">Allowance for Credit Losses</a></td>
<td class="text"> <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_MarketableSecuritiesUnrealizedGainLoss', window );">Total Unrealized Gains / (Losses)</a></td>
<td class="text"> <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_TradingSecurities', window );">Fair Value</a></td>
<td class="nump">12,834,444<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">12,834,444<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_MarketableSecurities', window );">Marketable Securities</a></td>
<td class="text"> <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_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember', window );">Money Market Funds [Member] | Fair Value, Inputs, Level 1 [Member]</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_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [Line Items]</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_TradingSecuritiesDebtAmortizedCost', window );">Adjusted Cost</a></td>
<td class="nump">146,359<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_FinancingReceivableAllowanceForCreditLosses', window );">Allowance for Credit Losses</a></td>
<td class="text"> <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_MarketableSecuritiesUnrealizedGainLoss', window );">Total Unrealized Gains / (Losses)</a></td>
<td class="text"> <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_TradingSecurities', window );">Fair Value</a></td>
<td class="nump">146,359<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">146,359<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_MarketableSecurities', window );">Marketable Securities</a></td>
<td class="text"> <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_CashAndCashEquivalentsAxis=us-gaap_USTreasurySecuritiesMember', window );">US Treasury Securities [Member] | Fair Value, Inputs, Level 2 [Member]</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_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [Line Items]</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_TradingSecuritiesDebtAmortizedCost', window );">Adjusted Cost</a></td>
<td class="nump">67,892,825<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_FinancingReceivableAllowanceForCreditLosses', window );">Allowance for Credit Losses</a></td>
<td class="text"> <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_MarketableSecuritiesUnrealizedGainLoss', window );">Total Unrealized Gains / (Losses)</a></td>
<td class="nump">389,241<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_TradingSecurities', window );">Fair Value</a></td>
<td class="nump">68,282,066<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">9,993,000<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_MarketableSecurities', window );">Marketable Securities</a></td>
<td class="nump">$ 58,289,066<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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3044-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CashAndCashEquivalentsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsLineItems</td>
</tr>
<tr>
<td style="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_FinancingReceivableAllowanceForCreditLosses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 financing receivable. Excludes allowance for financing receivable covered under loss sharing agreement.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11B<br> -Subparagraph (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=SL6953423-111524<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(7)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher SEC<br> -Name Regulation S-K (SK)<br> -Number 229<br> -Section 1405<br> -Paragraph (a)<br> -Subparagraph (3)<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher SEC<br> -Name Regulation S-K (SK)<br> -Number 229<br> -Section 1405<br> -Paragraph (c)<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher SEC<br> -Name Regulation S-K (SK)<br> -Number 229<br> -Section 1405<br> -Paragraph (a)<br> -Subparagraph (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_FinancingReceivableAllowanceForCreditLosses</td>
</tr>
<tr>
<td style="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_MarketableSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 investment in marketable security.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MarketableSecurities</td>
</tr>
<tr>
<td style="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_MarketableSecuritiesUnrealizedGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 unrealized gain (loss) on investment in marketable security.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(7)(c))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MarketableSecuritiesUnrealizedGainLoss</td>
</tr>
<tr>
<td style="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_TradingSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 investment in debt security measured at fair value with change in fair value recognized in net income (trading) and investment in equity security measured at fair value with change in fair value recognized in net income (FV-NI).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TradingSecurities</td>
</tr>
<tr>
<td style="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_TradingSecuritiesDebtAmortizedCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amortized cost of investments in debt securities classified as trading.</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_TradingSecuritiesDebtAmortizedCost</td>
</tr>
<tr>
<td style="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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</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_CashAndCashEquivalentsAxis=us-gaap_CashMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CashAndCashEquivalentsAxis=us-gaap_CashMember</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_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember</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_CashAndCashEquivalentsAxis=us-gaap_USTreasurySecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CashAndCashEquivalentsAxis=us-gaap_USTreasurySecuritiesMember</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>49
<FILENAME>R37.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367623708176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Assets and Liabilities assumed (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueAcquisitions', window );">Fair value of common shares issued</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 480,776<span></span>
</td>
<td class="nump">$ 25,160,223<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_Goodwill', window );">Goodwill</a></td>
<td class="nump">$ 14,706,818<span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="nump">14,706,818<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_BusinessAcquisitionAxis=CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember', window );">Advanced Conceptions, Inc. and Idaho Molecular, Inc. [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueAcquisitions', window );">Fair value of common shares issued</a></td>
<td class="nump">25,640,999<span></span>
</td>
<td class="text">&#160;<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_CODX_PaymentsToShareHoldersValueAcquisitions', window );">Payable to shareholders</a></td>
<td class="text"> <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_ContingentConsiderationClassifiedAsEquityFairValueDisclosure', window );">Fair value of contingent shares</a></td>
<td class="nump">8,850,626<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,850,626<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_WarrantsNotSettleableInCashFairValueDisclosure', window );">Fair value of contingent warrants</a></td>
<td class="nump">1,781,374<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,781,374<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_BusinessCombinationConsiderationTransferred1', window );">Business combination, consideration transferred</a></td>
<td class="nump">36,272,999<span></span>
</td>
<td class="nump">580,135<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="nump">1,196,243<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,196,243<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivables</a></td>
<td class="nump">31,170<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">31,170<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">70,321<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">70,321<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipments</a></td>
<td class="nump">408,173<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">408,173<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities', window );">Research and development in process</a></td>
<td class="nump">26,101,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">26,101,000<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_CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements', window );">Non competition agreements</a></td>
<td class="nump">1,094,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,094,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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities', window );">Accounts payable and accrued other expenses</a></td>
<td class="num">(1,170,867)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,170,867)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred tax liability</a></td>
<td class="num">(6,845,587)<span></span>
</td>
<td class="num">$ (101,593)<span></span>
</td>
<td class="num">(6,845,587)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet', window );">Total indentifiable net assets</a></td>
<td class="nump">20,884,453<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20,884,453<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_Goodwill', window );">Goodwill</a></td>
<td class="nump">15,388,546<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15,388,546<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Total</a></td>
<td class="nump">36,272,999<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">36,272,999<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_RestatementAxis=srt_ScenarioPreviouslyReportedMember', window );">Previously Reported [Member] | Advanced Conceptions, Inc. and Idaho Molecular, Inc. [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueAcquisitions', window );">Fair value of common shares issued</a></td>
<td class="nump">25,160,223<span></span>
</td>
<td class="text">&#160;<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_CODX_PaymentsToShareHoldersValueAcquisitions', window );">Payable to shareholders</a></td>
<td class="nump">100,000<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_ContingentConsiderationClassifiedAsEquityFairValueDisclosure', window );">Fair value of contingent shares</a></td>
<td class="nump">8,684,669<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,684,669<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_WarrantsNotSettleableInCashFairValueDisclosure', window );">Fair value of contingent warrants</a></td>
<td class="nump">1,747,972<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,747,972<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_BusinessCombinationConsiderationTransferred1', window );">Business combination, consideration transferred</a></td>
<td class="nump">35,692,864<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="nump">1,196,243<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,196,243<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivables</a></td>
<td class="nump">31,170<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">31,170<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">70,321<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">70,321<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipments</a></td>
<td class="nump">408,173<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">408,173<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities', window );">Research and development in process</a></td>
<td class="nump">26,101,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">26,101,000<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_CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements', window );">Non competition agreements</a></td>
<td class="nump">1,094,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,094,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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities', window );">Accounts payable and accrued other expenses</a></td>
<td class="num">(1,069,274)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,069,274)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred tax liability</a></td>
<td class="num">(6,845,587)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(6,845,587)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet', window );">Total indentifiable net assets</a></td>
<td class="nump">20,986,046<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20,986,046<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_Goodwill', window );">Goodwill</a></td>
<td class="nump">14,706,818<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">14,706,818<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Total</a></td>
<td class="nump">35,692,864<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">35,692,864<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_RestatementAxis=srt_RestatementAdjustmentMember', window );">Revision of Prior Period, Adjustment [Member] | Advanced Conceptions, Inc. and Idaho Molecular, Inc. [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueAcquisitions', window );">Fair value of common shares issued</a></td>
<td class="nump">480,776<span></span>
</td>
<td class="text">&#160;<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_CODX_PaymentsToShareHoldersValueAcquisitions', window );">Payable to shareholders</a></td>
<td class="num">(100,000)<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_ContingentConsiderationClassifiedAsEquityFairValueDisclosure', window );">Fair value of contingent shares</a></td>
<td class="nump">165,957<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">165,957<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_WarrantsNotSettleableInCashFairValueDisclosure', window );">Fair value of contingent warrants</a></td>
<td class="nump">33,402<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33,402<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_BusinessCombinationConsiderationTransferred1', window );">Business combination, consideration transferred</a></td>
<td class="nump">580,135<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivables</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther', window );">Prepaid expenses and other current assets</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property and equipments</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities', window );">Research and development in process</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <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_CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements', window );">Non competition agreements</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities', window );">Accounts payable and accrued other expenses</a></td>
<td class="num">(101,593)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(101,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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred tax liability</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text"> <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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet', window );">Total indentifiable net assets</a></td>
<td class="num">(101,593)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(101,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_Goodwill', window );">Goodwill</a></td>
<td class="nump">681,728<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">681,728<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Total</a></td>
<td class="nump">$ 580,135<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 580,135<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business combination recognized identifiable assets acquired and liabilities non competition agreements.</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;">CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_PaymentsToShareHoldersValueAcquisitions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payments to share holders value acquisitions.</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;">CODX_PaymentsToShareHoldersValueAcquisitions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="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_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6613-128477<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e6927-128479<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6578-128477<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, acquired at the acquisition date. 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.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents</td>
</tr>
<tr>
<td style="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 other assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther</td>
</tr>
<tr>
<td style="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables</td>
</tr>
<tr>
<td style="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 due within one year or within the normal operating cycle, if longer, assumed at the acquisition 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities</td>
</tr>
<tr>
<td style="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax liability attributable to taxable temporary differences assumed at the acquisition 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities</td>
</tr>
<tr>
<td style="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 recognized as of the acquisition date for the identifiable assets acquired in excess of (less than) the aggregate liabilities assumed.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI https://asc.fasb.org/extlink&amp;oid=123455525&amp;loc=d3e2207-128464<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 property, plant, and equipment recognized as of the acquisition 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI https://asc.fasb.org/extlink&amp;oid=123455525&amp;loc=d3e2207-128464<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 item represents liabilities associated with restructuring or exit activities of the acquiree, existing at the acquisition date (present liabilities of the acquiree).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI https://asc.fasb.org/extlink&amp;oid=123455525&amp;loc=d3e2207-128464<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities</td>
</tr>
<tr>
<td style="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="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_ContingentConsiderationClassifiedAsEquityFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of contingent consideration in a business combination that is classified in shareholders' equity.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContingentConsiderationClassifiedAsEquityFairValueDisclosure</td>
</tr>
<tr>
<td style="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_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="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_StockIssuedDuringPeriodValueAcquisitions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 stock issued pursuant to acquisitions during the period.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueAcquisitions</td>
</tr>
<tr>
<td style="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_WarrantsNotSettleableInCashFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value portion of warrants not settleable in cash classified as equity.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WarrantsNotSettleableInCashFairValueDisclosure</td>
</tr>
<tr>
<td style="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_BusinessAcquisitionAxis=CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BusinessAcquisitionAxis=CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember</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_RestatementAxis=srt_ScenarioPreviouslyReportedMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RestatementAxis=srt_ScenarioPreviouslyReportedMember</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_RestatementAxis=srt_RestatementAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RestatementAxis=srt_RestatementAdjustmentMember</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>50
<FILENAME>R38.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367625982288">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<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_CODX_RemeasurementOfAcquisitionContingencies', window );">Remeasurement of acquisition contingencies</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 78,617<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_RangeAxis=srt_MinimumMember', window );">Minimum [Member]</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1', window );">Finite lived intangible assets remaining amortization period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year 6 months<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_RangeAxis=srt_MaximumMember', window );">Maximum [Member]</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1', window );">Finite lived intangible assets remaining amortization period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<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_BusinessAcquisitionAxis=CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember', window );">Advanced Conceptions, Inc. and Idaho Molecular, Inc. [Member]</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<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_CODX_StockIssuedDuringPeriodSharesExchanged', window );">Number of shares exchanged</a></td>
<td class="nump">3,200,000<span></span>
</td>
<td class="nump">3,300,000<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_CODX_StockIssuedDuringPeriodSharesContingentConsideration', window );">Number of shares on contingent consideration</a></td>
<td class="nump">1,400,000<span></span>
</td>
<td class="nump">1,400,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_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Warrants to purchase shares of common stock</a></td>
<td class="nump">456,000<span></span>
</td>
<td class="nump">465,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_BusinessCombinationConsiderationTransferred1', window );">Purchase consideration</a></td>
<td class="nump">$ 36,272,999<span></span>
</td>
<td class="nump">$ 580,135<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Estimated tax liabilities</a></td>
<td class="nump">$ 6,845,587<span></span>
</td>
<td class="nump">101,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_GoodwillPeriodIncreaseDecrease', window );">Increase of goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 681,728<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_BusinessAcquisitionAxis=CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember', window );">Advanced Conceptions, Inc. and Idaho Molecular, Inc. [Member] | ACI And IDMO [Member]</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</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_EquityMethodInvestmentOwnershipPercentage', window );">Equity method investment ownership percentage</a></td>
<td class="nump">100.00%<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_CODX_RemeasurementOfAcquisitionContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Remeasurement of acquisition contingencies.</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;">CODX_RemeasurementOfAcquisitionContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_StockIssuedDuringPeriodSharesContingentConsideration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Stock issued during period shares contingent consideration.</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;">CODX_StockIssuedDuringPeriodSharesContingentConsideration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_StockIssuedDuringPeriodSharesExchanged">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Stock issued during period shares exchanged.</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;">CODX_StockIssuedDuringPeriodSharesExchanged</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="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_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6613-128477<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126975305&amp;loc=d3e6927-128479<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126966197&amp;loc=d3e6578-128477<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax liability attributable to taxable temporary differences assumed at the acquisition 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128092470&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities</td>
</tr>
<tr>
<td style="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_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 securities into which the class of warrant or right may be converted. For example, but not limited to, 500,000 warrants may be converted into 1,000,000 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights</td>
</tr>
<tr>
<td style="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_EquityMethodInvestmentOwnershipPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentOwnershipPercentage</td>
</tr>
<tr>
<td style="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:percentItemType</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_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Remaining amortization period of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1</td>
</tr>
<tr>
<td style="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:durationItemType</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_GoodwillPeriodIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillPeriodIncreaseDecrease</td>
</tr>
<tr>
<td style="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_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RangeAxis=srt_MinimumMember</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_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RangeAxis=srt_MaximumMember</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_BusinessAcquisitionAxis=CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BusinessAcquisitionAxis=CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember</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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=CODX_ACIAndIDMOMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=CODX_ACIAndIDMOMember</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>51
<FILENAME>R39.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367625931808">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Fair Value Assets and Liabilities (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</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_MarketableSecurities', window );">Marketable securities (certificates of deposit)</a></td>
<td class="nump">$ 58,289,066<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Fair Value, Inputs, Level 1 [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</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_MarketableSecurities', window );">Marketable securities (certificates of deposit)</a></td>
<td class="text"> <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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Fair Value, Inputs, Level 2 [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</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_MarketableSecurities', window );">Marketable securities (certificates of deposit)</a></td>
<td class="nump">58,289,066<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Fair Value, Recurring [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="nump">10,179,667<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_MarketableSecurities', window );">Marketable securities (certificates of deposit)</a></td>
<td class="nump">58,289,066<span></span>
</td>
<td class="nump">$ 1,255,266<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_AssetsFairValueDisclosure', window );">Total assets measured at fair value</a></td>
<td class="nump">68,468,733<span></span>
</td>
<td class="nump">1,255,266<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_CODX_FairValueOfContingentConsiderationToCommonStock', window );">Contingent consideration - common stock</a></td>
<td class="nump">2,499,147<span></span>
</td>
<td class="nump">8,684,669<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_CODX_FairValueOfContingentConsiderationToWarrants', window );">Contingent consideration - warrants</a></td>
<td class="nump">233,209<span></span>
</td>
<td class="nump">1,747,972<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_LiabilitiesFairValueDisclosure', window );">Total liabilities measured at fair value</a></td>
<td class="nump">2,732,356<span></span>
</td>
<td class="nump">10,432,641<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Fair Value, Recurring [Member] | Fair Value, Inputs, Level 1 [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="text"> <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_MarketableSecurities', window );">Marketable securities (certificates of deposit)</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_AssetsFairValueDisclosure', window );">Total assets measured at fair value</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_CODX_FairValueOfContingentConsiderationToCommonStock', window );">Contingent consideration - common stock</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_CODX_FairValueOfContingentConsiderationToWarrants', window );">Contingent consideration - warrants</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_LiabilitiesFairValueDisclosure', window );">Total liabilities measured at fair value</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Fair Value, Recurring [Member] | Fair Value, Inputs, Level 2 [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="nump">10,179,667<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_MarketableSecurities', window );">Marketable securities (certificates of deposit)</a></td>
<td class="nump">58,289,066<span></span>
</td>
<td class="nump">1,255,266<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_AssetsFairValueDisclosure', window );">Total assets measured at fair value</a></td>
<td class="nump">68,468,733<span></span>
</td>
<td class="nump">1,255,266<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_CODX_FairValueOfContingentConsiderationToCommonStock', window );">Contingent consideration - common stock</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_CODX_FairValueOfContingentConsiderationToWarrants', window );">Contingent consideration - warrants</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_LiabilitiesFairValueDisclosure', window );">Total liabilities measured at fair value</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Fair Value, Recurring [Member] | Fair Value, Inputs, Level 3 [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="text"> <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_MarketableSecurities', window );">Marketable securities (certificates of deposit)</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_AssetsFairValueDisclosure', window );">Total assets measured at fair value</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_CODX_FairValueOfContingentConsiderationToCommonStock', window );">Contingent consideration - common stock</a></td>
<td class="nump">2,499,147<span></span>
</td>
<td class="nump">8,684,669<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_CODX_FairValueOfContingentConsiderationToWarrants', window );">Contingent consideration - warrants</a></td>
<td class="nump">233,209<span></span>
</td>
<td class="nump">1,747,972<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_LiabilitiesFairValueDisclosure', window );">Total liabilities measured at fair value</a></td>
<td class="nump">$ 2,732,356<span></span>
</td>
<td class="nump">$ 10,432,641<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_FairValueOfContingentConsiderationToCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of contingent consideration to common stock.</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;">CODX_FairValueOfContingentConsiderationToCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_FairValueOfContingentConsiderationToWarrants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of contigent consideration to warrants.</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;">CODX_FairValueOfContingentConsiderationToWarrants</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_AssetsFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value portion of 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsFairValueDisclosure</td>
</tr>
<tr>
<td style="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_CashAndCashEquivalentsFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value portion 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.</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_CashAndCashEquivalentsFairValueDisclosure</td>
</tr>
<tr>
<td style="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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems</td>
</tr>
<tr>
<td style="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_LiabilitiesFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of financial and nonfinancial obligations.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesFairValueDisclosure</td>
</tr>
<tr>
<td style="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_MarketableSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 investment in marketable security.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MarketableSecurities</td>
</tr>
<tr>
<td style="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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</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>52
<FILENAME>R40.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367628587088">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Changes in Fair Value Measurement (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</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_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent', window );">Fair value as of December 31, 2021</a></td>
<td class="nump">$ 10,432,641<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_CODX_ContingentConsideredIssuedForMeasurementPeriodAdjustments', window );">Change in contingent purchase consideration for measurement period adjustments</a></td>
<td class="nump">199,359<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_CODX_ContingentConsideredIssuedForBusinessAcquisitions', window );">Change in fair value of contingent consideration issued for business acquisitions</a></td>
<td class="num">(7,899,644)<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_BusinessCombinationContingentConsiderationLiabilityNoncurrent', window );">Fair value as of December 31, 2022</a></td>
<td class="nump">$ 2,732,356<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_ContingentConsideredIssuedForBusinessAcquisitions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contingent considered issued for business acquisitions.</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;">CODX_ContingentConsideredIssuedForBusinessAcquisitions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_ContingentConsideredIssuedForMeasurementPeriodAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contingent considered issued for measurement period adjustments.</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;">CODX_ContingentConsideredIssuedForMeasurementPeriodAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_BusinessCombinationContingentConsiderationLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 liability recognized arising from contingent consideration in a business combination, expected to be settled beyond 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=6911189&amp;loc=d3e6408-128476<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 35<br> -Paragraph 1<br> -Subparagraph b<br> -URI https://asc.fasb.org/extlink&amp;oid=126966325&amp;loc=d3e6819-128478<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent</td>
</tr>
<tr>
<td style="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_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="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>53
<FILENAME>R41.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367625967456">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Contingent Consideration Common Stock and Warrants (Details)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems', window );"><strong>Fair Value Measurement Inputs and Valuation Techniques [Line Items]</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_WarrantsAndRightsOutstandingTerm', window );">Expected term</a></td>
<td class="text">4 years<span></span>
</td>
<td class="text">5 years<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_MeasurementInputTypeAxis=us-gaap_MeasurementInputSharePriceMember', window );">Measurement Input, Share Price [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems', window );"><strong>Fair Value Measurement Inputs and Valuation Techniques [Line Items]</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_WarrantsAndRightsOutstandingMeasurementInput', window );">Warrants measurement input</a></td>
<td class="nump">2.52<span></span>
</td>
<td class="nump">8.93<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_BusinessCombinationContingentConsiderationLiabilityMeasurementInput', window );">Business combination,contingent consideration</a></td>
<td class="nump">2.52<span></span>
</td>
<td class="nump">8.93<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_MeasurementInputTypeAxis=CODX_MeasurementInputStrikePriceMember', window );">Measurement Input Strike Price [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems', window );"><strong>Fair Value Measurement Inputs and Valuation Techniques [Line Items]</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_WarrantsAndRightsOutstandingMeasurementInput', window );">Warrants measurement input</a></td>
<td class="nump">9.13<span></span>
</td>
<td class="nump">9.13<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_MeasurementInputTypeAxis=us-gaap_MeasurementInputPriceVolatilityMember', window );">Measurement Input, Price Volatility [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems', window );"><strong>Fair Value Measurement Inputs and Valuation Techniques [Line Items]</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_WarrantsAndRightsOutstandingMeasurementInput', window );">Warrants measurement input</a></td>
<td class="nump">0.7500<span></span>
</td>
<td class="nump">0.8000<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_MeasurementInputTypeAxis=us-gaap_MeasurementInputRiskFreeInterestRateMember', window );">Measurement Input, Risk Free Interest Rate [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems', window );"><strong>Fair Value Measurement Inputs and Valuation Techniques [Line Items]</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_WarrantsAndRightsOutstandingMeasurementInput', window );">Warrants measurement input</a></td>
<td class="nump">0.0410<span></span>
</td>
<td class="nump">0.0130<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_BusinessCombinationContingentConsiderationLiabilityMeasurementInput', window );">Business combination,contingent consideration</a></td>
<td class="nump">4.10<span></span>
</td>
<td class="nump">1.30<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_MeasurementInputTypeAxis=us-gaap_MeasurementInputExpectedTermMember', window );">Measurement Input, Expected Term [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems', window );"><strong>Fair Value Measurement Inputs and Valuation Techniques [Line Items]</strong></a></td>
<td class="text">&#160;<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_CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm', window );">Business combination,contingent consideration</a></td>
<td class="text">4 years<span></span>
</td>
<td class="text">5 years<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_MeasurementInputTypeAxis=CODX_MeasurementInputCostOfCapitalMember', window );">Measurement Input Cost of Capital [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems', window );"><strong>Fair Value Measurement Inputs and Valuation Techniques [Line Items]</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_BusinessCombinationContingentConsiderationLiabilityMeasurementInput', window );">Business combination,contingent consideration</a></td>
<td class="nump">27.00<span></span>
</td>
<td class="nump">27.00<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_MeasurementInputTypeAxis=us-gaap_MeasurementInputDiscountRateMember', window );">Measurement Input, Discount Rate [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems', window );"><strong>Fair Value Measurement Inputs and Valuation Techniques [Line Items]</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_BusinessCombinationContingentConsiderationLiabilityMeasurementInput', window );">Business combination,contingent consideration</a></td>
<td class="nump">9.50<span></span>
</td>
<td class="nump">9.50<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_MeasurementInputTypeAxis=CODX_MeasurementInputEquityVolatilityMember', window );">Measurement Input Equity Volatility [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems', window );"><strong>Fair Value Measurement Inputs and Valuation Techniques [Line Items]</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_BusinessCombinationContingentConsiderationLiabilityMeasurementInput', window );">Business combination,contingent consideration</a></td>
<td class="nump">75.00<span></span>
</td>
<td class="nump">80.00<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_MeasurementInputTypeAxis=CODX_MeasurementInputAssetVolatilityMember', window );">Measurement Input Asset Volatility [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems', window );"><strong>Fair Value Measurement Inputs and Valuation Techniques [Line Items]</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_BusinessCombinationContingentConsiderationLiabilityMeasurementInput', window );">Business combination,contingent consideration</a></td>
<td class="nump">80.00<span></span>
</td>
<td class="nump">80.00<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_MeasurementInputTypeAxis=CODX_MeasurementInputRevenueVolatilityMember', window );">Measurement Input Revenue Volatility [Member]</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems', window );"><strong>Fair Value Measurement Inputs and Valuation Techniques [Line Items]</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_BusinessCombinationContingentConsiderationLiabilityMeasurementInput', window );">Business combination,contingent consideration</a></td>
<td class="nump">30.00<span></span>
</td>
<td class="nump">30.00<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 input, expected term used to measure contingent consideration liability from business combination.</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;">CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</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_BusinessCombinationContingentConsiderationLiabilityMeasurementInput">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 input used to measure contingent consideration liability from business combination.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationContingentConsiderationLiabilityMeasurementInput</td>
</tr>
<tr>
<td style="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:decimalItemType</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems</td>
</tr>
<tr>
<td style="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_WarrantsAndRightsOutstandingMeasurementInput">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 input used to measure outstanding warrant and right embodying unconditional obligation requiring redemption by transferring asset at specified or determinable date or upon event certain to occur.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WarrantsAndRightsOutstandingMeasurementInput</td>
</tr>
<tr>
<td style="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:decimalItemType</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_WarrantsAndRightsOutstandingTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period between issuance and expiration of outstanding warrant and right embodying unconditional obligation requiring redemption by transferring asset at specified or determinable date or upon event certain to occur, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WarrantsAndRightsOutstandingTerm</td>
</tr>
<tr>
<td style="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:durationItemType</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_MeasurementInputTypeAxis=us-gaap_MeasurementInputSharePriceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MeasurementInputTypeAxis=us-gaap_MeasurementInputSharePriceMember</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_MeasurementInputTypeAxis=CODX_MeasurementInputStrikePriceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MeasurementInputTypeAxis=CODX_MeasurementInputStrikePriceMember</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_MeasurementInputTypeAxis=us-gaap_MeasurementInputPriceVolatilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MeasurementInputTypeAxis=us-gaap_MeasurementInputPriceVolatilityMember</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_MeasurementInputTypeAxis=us-gaap_MeasurementInputRiskFreeInterestRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MeasurementInputTypeAxis=us-gaap_MeasurementInputRiskFreeInterestRateMember</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_MeasurementInputTypeAxis=us-gaap_MeasurementInputExpectedTermMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MeasurementInputTypeAxis=us-gaap_MeasurementInputExpectedTermMember</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_MeasurementInputTypeAxis=CODX_MeasurementInputCostOfCapitalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MeasurementInputTypeAxis=CODX_MeasurementInputCostOfCapitalMember</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_MeasurementInputTypeAxis=us-gaap_MeasurementInputDiscountRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MeasurementInputTypeAxis=us-gaap_MeasurementInputDiscountRateMember</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_MeasurementInputTypeAxis=CODX_MeasurementInputEquityVolatilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MeasurementInputTypeAxis=CODX_MeasurementInputEquityVolatilityMember</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_MeasurementInputTypeAxis=CODX_MeasurementInputAssetVolatilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MeasurementInputTypeAxis=CODX_MeasurementInputAssetVolatilityMember</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_MeasurementInputTypeAxis=CODX_MeasurementInputRevenueVolatilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MeasurementInputTypeAxis=CODX_MeasurementInputRevenueVolatilityMember</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>54
<FILENAME>R42.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367624460176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Property and Equipment (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Less: accumulated depreciation</a></td>
<td class="num">$ (1,372,248)<span></span>
</td>
<td class="num">$ (622,155)<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 );">Property and equipment, net</a></td>
<td class="nump">2,539,483<span></span>
</td>
<td class="nump">1,933,216<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember', window );">Equipment [Member]</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</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_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">$ 3,574,730<span></span>
</td>
<td class="nump">2,476,813<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember', window );">Equipment [Member] | Minimum [Member]</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</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_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment estimated useful lives</a></td>
<td class="text">3 years<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember', window );">Equipment [Member] | Maximum [Member]</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</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_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment estimated useful lives</a></td>
<td class="text">5 years<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdsAndLeaseholdImprovementsMember', window );">Leaseholds and Leasehold Improvements [Member] | Minimum [Member]</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</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_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment estimated useful lives</a></td>
<td class="text">0 years<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdsAndLeaseholdImprovementsMember', window );">Leaseholds and Leasehold Improvements [Member] | Maximum [Member]</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</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_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment estimated useful lives</a></td>
<td class="text">3 years<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold Improvements [Member]</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</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_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">$ 224,957<span></span>
</td>
<td class="nump">3,157<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember', window );">Office Equipment [Member]</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</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_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">$ 112,044<span></span>
</td>
<td class="nump">$ 75,401<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember', window );">Office Equipment [Member] | Minimum [Member]</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</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_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment estimated useful lives</a></td>
<td class="text">2 years<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember', window );">Office Equipment [Member] | Maximum [Member]</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</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_PropertyPlantAndEquipmentUsefulLife', window );">Property and equipment estimated useful lives</a></td>
<td class="text">5 years<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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</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_PropertyPlantAndEquipmentUsefulLife</td>
</tr>
<tr>
<td style="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:durationItemType</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember</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_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RangeAxis=srt_MinimumMember</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_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RangeAxis=srt_MaximumMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdsAndLeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdsAndLeaseholdImprovementsMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember</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>55
<FILENAME>R43.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367624349152">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Goodwill (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</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_Goodwill', window );">Goodwil - beginning</a></td>
<td class="nump">$ 14,706,818<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_GoodwillTranslationAndPurchaseAccountingAdjustments', window );">Measurement period adjustments</a></td>
<td class="nump">681,728<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_GoodwillImpairmentLoss', window );">Goodwill impairment charges</a></td>
<td class="num">(15,388,546)<span></span>
</td>
<td class="text"> <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_Goodwill', window );">Goodwill - ending</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 14,706,818<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_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="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_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="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_GoodwillImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13777-109266<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillImpairmentLoss</td>
</tr>
<tr>
<td style="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_GoodwillTranslationAndPurchaseAccountingAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) from foreign currency translation adjustments and purchase accounting adjustments of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 25<br> -Paragraph 16<br> -URI https://asc.fasb.org/extlink&amp;oid=123586518&amp;loc=d3e961-128460<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillTranslationAndPurchaseAccountingAdjustments</td>
</tr>
<tr>
<td style="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>56
<FILENAME>R44.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367624427920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Intangible Assets, Net (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</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_FiniteLivedIntangibleAssetsGross', window );">Intangible assets, gross</a></td>
<td class="nump">$ 27,195,000<span></span>
</td>
<td class="nump">$ 27,195,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_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Less accumulated amortization</a></td>
<td class="num">(426,667)<span></span>
</td>
<td class="text"> <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_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="nump">$ 26,768,333<span></span>
</td>
<td class="nump">$ 27,195,000<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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_InProcessResearchAndDevelopmentMember', window );">In Process Research and Development [Member]</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_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<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_CODX_IndefiniteLivedIntangibleAssetUsefulLife', window );">Estimated useful lives in years, term</a></td>
<td class="text">Indefinite<span></span>
</td>
<td class="text">Indefinite<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_FiniteLivedIntangibleAssetsGross', window );">Intangible assets, gross</a></td>
<td class="nump">$ 26,101,000<span></span>
</td>
<td class="nump">$ 26,101,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_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Less accumulated amortization</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="nump">26,101,000<span></span>
</td>
<td class="nump">26,101,000<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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember', window );">Noncompete Agreements [Member]</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_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</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_FiniteLivedIntangibleAssetsGross', window );">Intangible assets, gross</a></td>
<td class="nump">1,094,000<span></span>
</td>
<td class="nump">1,094,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_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Less accumulated amortization</a></td>
<td class="num">(426,667)<span></span>
</td>
<td class="text"> <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_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="nump">$ 667,333<span></span>
</td>
<td class="nump">$ 1,094,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_FiniteLivedIntangibleAssetUsefulLife', window );">Estimated useful lives in years</a></td>
<td class="text">2 years 8 months 12 days<span></span>
</td>
<td class="text">2 years 8 months 12 days<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_IndefiniteLivedIntangibleAssetUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indefinite lived intangible asset useful life.</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;">CODX_IndefiniteLivedIntangibleAssetUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_FiniteLivedIntangibleAssetUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</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_FiniteLivedIntangibleAssetUsefulLife</td>
</tr>
<tr>
<td style="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:durationItemType</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_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="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_FiniteLivedIntangibleAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 928<br> -SubTopic 340<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6473545&amp;loc=d3e61844-108004<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsGross</td>
</tr>
<tr>
<td style="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_FiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="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_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_InProcessResearchAndDevelopmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_InProcessResearchAndDevelopmentMember</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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember</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>57
<FILENAME>R45.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367629827008">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Future Amortization Expense (Details)<br></strong></div></th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</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_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2023</a></td>
<td class="nump">$ 364,668<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2024</a></td>
<td class="nump">302,665<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_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">$ 667,333<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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</td>
</tr>
<tr>
<td style="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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="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_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="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_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="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>58
<FILENAME>R46.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367634673600">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Goodwill and Intangible Assets (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</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_Goodwill', window );">Goodwill</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 14,706,818<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_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 55<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=122137925&amp;loc=d3e14258-109268<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="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_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="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>59
<FILENAME>R47.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367628406384">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Accrued Expenses (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [Abstract]</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_AccruedPayrollTaxesCurrent', window );">Payroll liabilities</a></td>
<td class="nump">$ 428,354<span></span>
</td>
<td class="nump">$ 2,455,694<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_AccruedSalesCommissionCurrent', window );">Distributor commissions</a></td>
<td class="nump">159,725<span></span>
</td>
<td class="nump">509,500<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_OtherAccruedLiabilitiesCurrent', window );">Other accrued liabilities</a></td>
<td class="nump">346,368<span></span>
</td>
<td class="nump">894,458<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_AccruedLiabilitiesCurrent', window );">Total accrued expenses</a></td>
<td class="nump">$ 934,447<span></span>
</td>
<td class="nump">$ 3,859,652<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_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> -Publisher FASB<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> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AccruedPayrollTaxesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 for statutory payroll taxes incurred through that date and withheld from employees pertaining to services received from them, including entity's matching share of the employees FICA taxes and contributions to the state and federal unemployment insurance programs. 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> -Publisher FASB<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> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedPayrollTaxesCurrent</td>
</tr>
<tr>
<td style="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_AccruedSalesCommissionCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 through that date and payable for sales commissions. 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6935-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<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> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedSalesCommissionCurrent</td>
</tr>
<tr>
<td style="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_OtherAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 expenses incurred but not yet paid classified as other, due within 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<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> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="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>60
<FILENAME>R48.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367628434384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Revenue by Geographic Area (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 34,218,209<span></span>
</td>
<td class="nump">$ 97,885,603<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">UNITED STATES</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 24,671,554<span></span>
</td>
<td class="nump">$ 52,185,812<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 | Revenue Benchmark [Member] | Geographic Concentration Risk [Member]</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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_ConcentrationRiskPercentage1', window );">Percentage of revenue</a></td>
<td class="nump">72.00%<span></span>
</td>
<td class="nump">53.00%<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=CODX_RestOfWorldMember', window );">Rest of World [Member]</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 9,546,655<span></span>
</td>
<td class="nump">$ 45,699,791<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=CODX_RestOfWorldMember', window );">Rest of World [Member] | Revenue Benchmark [Member] | Geographic Concentration Risk [Member]</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_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</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_ConcentrationRiskPercentage1', window );">Percentage of revenue</a></td>
<td class="nump">28.00%<span></span>
</td>
<td class="nump">47.00%<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_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13531-108611<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13537-108611<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="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:percentItemType</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_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="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_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, including 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130543-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI https://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="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_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</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_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember</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=CODX_RestOfWorldMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=CODX_RestOfWorldMember</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>61
<FILENAME>R49.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367624141264">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Deferred Revenue (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</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_ContractWithCustomerLiability', window );">Deferred revenue, beginning balance</a></td>
<td class="nump">$ 150,000<span></span>
</td>
<td class="nump">$ 305,307<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_ContractWithCustomerLiabilityRevenueRecognized', window );">Revenue recognized included in deferred revenue balance at the beginning of the period</a></td>
<td class="num">(150,000)<span></span>
</td>
<td class="num">(256,110)<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_CODX_IncreaseDueToPrepaymentsFromCustomers', window );">Increase due to prepayments from customers</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">79,213<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_CODX_IncreaseDueToNoteReceivable', window );">Increase due to note receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">150,000<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_CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances', window );">Decrease due to refunds to customers and application to open balances</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(128,410)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Deferred revenue, Ending balance</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 150,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Decrease due to refunds to customers and application to open balances.</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;">CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_IncreaseDueToNoteReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase due to note receivable.</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;">CODX_IncreaseDueToNoteReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_IncreaseDueToPrepaymentsFromCustomers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase due to prepayments from customers.</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;">CODX_IncreaseDueToPrepaymentsFromCustomers</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_ContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 obligation to transfer good or service to customer for which consideration has been received or is receivable.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130531-203044<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130549-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130532-203044<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiability</td>
</tr>
<tr>
<td style="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_ContractWithCustomerLiabilityRevenueRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityRevenueRecognized</td>
</tr>
<tr>
<td style="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_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="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>62
<FILENAME>R50.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367624140848">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Basic and Diluted Earnings Per Share (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</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, as reported</a></td>
<td class="num">$ (14,238,249)<span></span>
</td>
<td class="nump">$ 36,658,564<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_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted average shares, basic</a></td>
<td class="nump">31,479,028<span></span>
</td>
<td class="nump">28,874,555<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_WeightedAverageNumberDilutedSharesOutstandingAdjustment', window );">Dilutive effect of stock options, warrants and RSUs</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">1,029,131<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 );">Shares used to compute diluted earnings per share</a></td>
<td class="nump">31,479,028<span></span>
</td>
<td class="nump">29,903,686<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_EarningsPerShareBasic', window );">Basic earnings per share</a></td>
<td class="num">$ (0.45)<span></span>
</td>
<td class="nump">$ 1.27<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_EarningsPerShareDiluted', window );">Diluted earnings per share</a></td>
<td class="num">$ (0.45)<span></span>
</td>
<td class="nump">$ 1.23<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_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_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) for the period 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e4984-109258<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e3842-109258<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="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_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) for 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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI https://asc.fasb.org/extlink&amp;oid=128363288&amp;loc=d3e3842-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_WeightedAverageNumberDilutedSharesOutstandingAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment</td>
</tr>
<tr>
<td style="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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>63
<FILENAME>R51.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367626201136">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings per Share (Details Narrative) - shares<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems', window );"><strong>Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]</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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Securities excluded from computation of diluted earnings per share</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">154,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_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs) [Member]</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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems', window );"><strong>Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]</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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Securities excluded from computation of diluted earnings per share</a></td>
<td class="nump">1,443,238<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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_EmployeeStockOptionMember', window );">Share-Based Payment Arrangement, Option [Member]</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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems', window );"><strong>Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]</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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Securities excluded from computation of diluted earnings per share</a></td>
<td class="nump">50,000<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_StatementEquityComponentsAxis=us-gaap_CommonStockMember', window );">Common Stock [Member]</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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems', window );"><strong>Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]</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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Securities excluded from computation of diluted earnings per share</a></td>
<td class="nump">1,400,000<span></span>
</td>
<td class="nump">1,400,000<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_StatementEquityComponentsAxis=us-gaap_WarrantMember', window );">Warrant [Member]</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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems', window );"><strong>Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]</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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Securities excluded from computation of diluted earnings per share</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">465,000<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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems</td>
</tr>
<tr>
<td style="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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_RestrictedStockUnitsRSUMember</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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_EmployeeStockOptionMember</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_StatementEquityComponentsAxis=us-gaap_CommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementEquityComponentsAxis=us-gaap_CommonStockMember</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_StatementEquityComponentsAxis=us-gaap_WarrantMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementEquityComponentsAxis=us-gaap_WarrantMember</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>64
<FILENAME>R52.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367632808864">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Option Activity (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-Based Payment Arrangement [Abstract]</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of Options Outstanding, Beginning</a></td>
<td class="nump">1,111,363<span></span>
</td>
<td class="nump">1,300,588<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Weighted Average Exercise Price Outstanding, Beginning</a></td>
<td class="nump">$ 2.12<span></span>
</td>
<td class="nump">$ 2.44<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Weighted Average Fair Value Outstanding, Beginning</a></td>
<td class="nump">$ 1.31<span></span>
</td>
<td class="nump">$ 1.24<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod', window );">Number of Options Outstanding, Granted</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Granted</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Fair Value, Granted</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod', window );">Number of Options Outstanding, Expired</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Expired</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue', window );">Weighted Average Fair Value, Expired</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod', window );">Number of Options Outstanding, Forfeited/Cancelled</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Forfeited/Cancelled</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue', window );">Weighted Average Fair Value, Forfeited/Cancelled</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Number of Options Outstanding, Exercised</a></td>
<td class="num">(70,791)<span></span>
</td>
<td class="num">(189,225)<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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Exercised</a></td>
<td class="nump">$ 1.10<span></span>
</td>
<td class="nump">$ 2.38<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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised', window );">Weighted Average Fair Value, Exercised</a></td>
<td class="nump">$ 0.51<span></span>
</td>
<td class="nump">$ 1.12<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of Options Outstanding, Ending</a></td>
<td class="nump">1,040,572<span></span>
</td>
<td class="nump">1,111,363<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Weighted Average Exercise Price Outstanding, Ending</a></td>
<td class="nump">$ 2.19<span></span>
</td>
<td class="nump">$ 2.12<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Weighted Average Fair Value Outstanding, Ending</a></td>
<td class="nump">$ 1.37<span></span>
</td>
<td class="nump">$ 1.31<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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm', window );">Weighted-average Remaining Contractual Life (years) Outstanding, Ending</a></td>
<td class="text">5 years 10 months 17 days<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Number of Options Exercisable Ending</a></td>
<td class="nump">1,040,572<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Exercisable Ending</a></td>
<td class="nump">$ 2.19<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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable', window );">Weighted Average Fair Value, Exercisable Ending</a></td>
<td class="nump">$ 1.37<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Weighted-average Remaining Contractual Life (years), Exercisable Ending</a></td>
<td class="text">5 years 10 months 17 days<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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share based compensation arrangement by share based payment award options non vested weighted average grant date fair value exercisable.</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;">CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share based compensation arrangement by share based payment award options non vested weighted average grant date fair value exercised.</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;">CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sharebased compensation arrangement by sharebased payment award non options outstanding weighted average remaining contractual term.</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;">CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 options or other stock instruments for which the right to exercise has lapsed under the terms of the plan agreements.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Net number of share options (or share units) granted during 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 options outstanding, including both vested and non-vested options.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees could have acquired the underlying shares with respect to stock options of the plan that expired.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="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:durationItemType</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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average grant-date fair value of non-vested options forfeited.</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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average grant-date fair value of non-vested options outstanding.</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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average grant-date fair value of options vested.</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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 share options (or share units) exercised during the current 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="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>65
<FILENAME>R53.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367626258528">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Outstanding Restricted Stock Units and Related Activity (Details) - Restricted Stock Units (RSUs) [Member] - $ / shares<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Number of Restricted Stock Units, Outstanding Beginning</a></td>
<td class="nump">1,267,415<span></span>
</td>
<td class="nump">522,500<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Weighted Average Grant Date Fair Value, Outstanding Beginning</a></td>
<td class="nump">$ 9.94<span></span>
</td>
<td class="nump">$ 10.49<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number of Restricted Stock Units, Granted</a></td>
<td class="nump">1,925,476<span></span>
</td>
<td class="nump">1,217,500<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant Date Fair Value, Granted</a></td>
<td class="nump">$ 5.66<span></span>
</td>
<td class="nump">$ 9.76<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Number of Restricted Stock Units, Vested</a></td>
<td class="num">(725,166)<span></span>
</td>
<td class="num">(438,502)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant Date Fair Value, Vested</a></td>
<td class="nump">$ 8.66<span></span>
</td>
<td class="nump">$ 10.10<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Number of Restricted Stock Units, Forfeited/Cancelled</a></td>
<td class="num">(41,000)<span></span>
</td>
<td class="num">(34,083)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Weighted Average Grant Date Fair Value, Forfeited/Cancelled</a></td>
<td class="nump">$ 8.31<span></span>
</td>
<td class="nump">$ 9.91<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Number of Restricted Stock Units, Outstanding Ending</a></td>
<td class="nump">2,426,725<span></span>
</td>
<td class="nump">1,267,415<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Weighted Average Grant Date Fair Value, Outstanding Ending</a></td>
<td class="nump">$ 7.06<span></span>
</td>
<td class="nump">$ 9.94<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding 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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of equity-based payment instruments, excluding stock (or unit) options, that vested 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="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_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</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>66
<FILENAME>R54.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367624300112">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Warrant Activity (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-Based Payment Arrangement [Abstract]</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber', window );">Number of Warrants Outstanding, Beginning</a></td>
<td class="nump">526,281<span></span>
</td>
<td class="nump">70,000<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_CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Beginning</a></td>
<td class="nump">$ 8.15<span></span>
</td>
<td class="nump">$ 1.83<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_CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue', window );">Weighted Average fair value, Beginning</a></td>
<td class="nump">$ 4.01<span></span>
</td>
<td class="nump">$ 5.21<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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1', window );">Weighted-average Remaining Contractual Life (Years) Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years 3 months 18 days<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted', window );">Number of Warrants Outstanding, Granted</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">456,281<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_CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Granted</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 9.13<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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue', window );">Weighted Average Fair Value, Granted</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 3.83<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations', window );">Number of Warrants Outstanding, Expired</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Expired</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue', window );">Weighted Average Fair Value, Expired</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures', window );">Number of Warrants Outstanding, Forfeited/Cancelled</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Forfeited/Cancelled</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue', window );">Weighted Average Fair Value, Forfeited/Cancelled</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised', window );">Number of Warrants Outstanding, Exercised</a></td>
<td class="num">(50,000)<span></span>
</td>
<td class="text"> <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_CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Exercised</a></td>
<td class="nump">$ 2.00<span></span>
</td>
<td class="text"> <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_CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Fair Value, Exercised</a></td>
<td class="nump">$ 1.22<span></span>
</td>
<td class="text"> <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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3', window );">Weighted-average Remaining Contractual Life (Years) Outstanding</a></td>
<td class="text">4 years<span></span>
</td>
<td class="text">4 years 8 months 12 days<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_CODX_ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration', window );">Number of Warrants Outstanding, Issued</a></td>
<td class="nump">8,719<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_CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Issued</a></td>
<td class="nump">$ 9.13<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_CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue', window );">Weighted Average Fair Value, Issued</a></td>
<td class="nump">$ 1.88<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber', window );">Number of Warrants Outstanding, Ending</a></td>
<td class="nump">485,000<span></span>
</td>
<td class="nump">526,281<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_CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Ending</a></td>
<td class="nump">$ 8.81<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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue', window );">Weighted Average Fair Value, Ending</a></td>
<td class="nump">$ 2.43<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_CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Issued For Adjustments To Contingent Purchase Consideration Period Weighted Average Exercise Price.</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;">CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Issued for adjustments to contingent purchase consideration weighted average grant date fair value.</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;">CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average fair value, exercised.</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;">CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average exercise price, beginning.</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;">CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share based compensation arrangement by share based payment award non options outstanding weighted average fair value.</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;">CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the non-option plan.</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;">CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average exercise price, forfeited/cancelled.</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;">CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees could have acquired the underlying shares with respect to non-options of the plan that expired.</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;">CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average exercise price, forfeited/cancelled.</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;">CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average exercise price granted.</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;">CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share based compensation issued for adjustments to contingent purchase consideration.</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;">CODX_ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted-average remaining contractual life (years) outstanding, beginning.</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;">CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sharebased compensation arrangement by sharebased payment award non options outstanding weighted average remaining contractual term3.</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;">CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average fair value, beginning.</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;">CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share based compensation arrangement by share based payment award options non vested weighted average grant date fair value exercised.</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;">CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average fair value, forfeited/cancelled.</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;">CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average grant date fair value, granted</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;">CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 non-option equity instruments exercised by participants.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 under non-option equity instrument agreements for which rights to exercise lapsed.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 under non-option equity instrument agreements that were cancelled as a result of occurrence of a terminating event.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Net number of non-option equity instruments granted to participants.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equity instruments other than options outstanding, including both vested and non-vested instruments.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber</td>
</tr>
<tr>
<td style="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>67
<FILENAME>R55.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367631317344">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Recognized Stock-based Compensation Expense (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</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_AllocatedShareBasedCompensationExpense', window );">Total stock-based compensation expense</a></td>
<td class="nump">$ 7,543,223<span></span>
</td>
<td class="nump">$ 5,509,404<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_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Share-Based Payment Arrangement, Option [Member]</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</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_AllocatedShareBasedCompensationExpense', window );">Total stock-based compensation expense</a></td>
<td class="nump">78,115<span></span>
</td>
<td class="nump">292,754<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_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs) [Member]</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</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_AllocatedShareBasedCompensationExpense', window );">Total stock-based compensation expense</a></td>
<td class="nump">7,465,108<span></span>
</td>
<td class="nump">5,164,750<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_AwardTypeAxis=us-gaap_StockCompensationPlanMember', window );">Share-Based Payment Arrangement [Member]</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</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_AllocatedShareBasedCompensationExpense', window );">Total stock-based compensation expense</a></td>
<td class="text"> <span></span>
</td>
<td class="nump">$ 51,900<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_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 expense for award under share-based payment arrangement. Excludes amount capitalized.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="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_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</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_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</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_AwardTypeAxis=us-gaap_StockCompensationPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AwardTypeAxis=us-gaap_StockCompensationPlanMember</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>68
<FILENAME>R56.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367626269632">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Aug. 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightOutstanding', window );">Warrants purchase</a></td>
<td class="nump">456,000<span></span>
</td>
<td class="text">&#160;<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_StatementEquityComponentsAxis=us-gaap_WarrantMember', window );">Warrant [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Aggregate intrinsic value of options outstanding</a></td>
<td class="nump">$ 22,000<span></span>
</td>
<td class="text">&#160;<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_CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue', window );">Intrinsic value of warrants exercised</a></td>
<td class="nump">$ 300,000<span></span>
</td>
<td class="nump">$ 0.0<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_CODX_ClassOfWarrantExercisable', window );">Warrants exercisable</a></td>
<td class="nump">20,000<span></span>
</td>
<td class="text">&#160;<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_AwardTypeAxis=CODX_StockOptionsMember', window );">Stock Options [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Intrinsic value of options value exercised</a></td>
<td class="nump">$ 400,000<span></span>
</td>
<td class="nump">1,300,000<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Aggregate intrinsic value of options outstanding</a></td>
<td class="nump">800,000<span></span>
</td>
<td class="nump">$ 7,600,000<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_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Unrecognized stock-based compensation</a></td>
<td class="nump">$ 14,700,000<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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Unrecognized stock-based compensation recognition period</a></td>
<td class="text">2 years 2 months 12 days<span></span>
</td>
<td class="text">&#160;<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_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock [Member] | Third Parties [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesIssuedForServices', window );">Number of shares issued for services</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">5,548<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_PlanNameAxis=CODX_TwoThousandFifteenLongTermIncentivePlanMember', window );">2015 Long Term Incentive Plan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Number of common shares availalble for issuance</a></td>
<td class="nump">6,210,790<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,000,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_ClassOfWarrantExercisable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Class of warrant exercisable.</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;">CODX_ClassOfWarrantExercisable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Intrinsic value of warrants exercised.</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;">CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_ClassOfWarrantOrRightOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 warrants or rights outstanding.</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_ClassOfWarrantOrRightOutstanding</td>
</tr>
<tr>
<td style="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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cost not yet recognized for nonvested award under share-based payment arrangement.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</td>
</tr>
<tr>
<td style="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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="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:durationItemType</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 by which the current fair value of the underlying stock exceeds the exercise price of options 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue</td>
</tr>
<tr>
<td style="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_StockIssuedDuringPeriodSharesIssuedForServices">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 issued in lieu of cash for services contributed to the entity. Number of shares includes, but is not limited to, shares issued for services contributed by vendors and founders.</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_StockIssuedDuringPeriodSharesIssuedForServices</td>
</tr>
<tr>
<td style="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_StatementEquityComponentsAxis=us-gaap_WarrantMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementEquityComponentsAxis=us-gaap_WarrantMember</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_AwardTypeAxis=CODX_StockOptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AwardTypeAxis=CODX_StockOptionsMember</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_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</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_AwardTypeAxis=us-gaap_RestrictedStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AwardTypeAxis=us-gaap_RestrictedStockMember</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_TitleOfIndividualAxis=CODX_ThirdPartiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TitleOfIndividualAxis=CODX_ThirdPartiesMember</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_PlanNameAxis=CODX_TwoThousandFifteenLongTermIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PlanNameAxis=CODX_TwoThousandFifteenLongTermIncentivePlanMember</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>69
<FILENAME>R57.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367631316768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Components Income Tax Provision (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract', window );"><strong>Current:</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_CurrentFederalTaxExpenseBenefit', window );">Federal</a></td>
<td class="nump">$ 563,821<span></span>
</td>
<td class="nump">$ 6,092,730<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_CurrentStateAndLocalTaxExpenseBenefit', window );">State</a></td>
<td class="num">(266,248)<span></span>
</td>
<td class="nump">886,173<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_CurrentFederalStateAndLocalTaxExpenseBenefit', window );">Total current</a></td>
<td class="nump">297,573<span></span>
</td>
<td class="nump">6,978,903<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_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract', window );"><strong>Deferred:</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_DeferredFederalIncomeTaxExpenseBenefit', window );">Federal</a></td>
<td class="num">(3,945,090)<span></span>
</td>
<td class="nump">1,394,686<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_DeferredStateAndLocalIncomeTaxExpenseBenefit', window );">State</a></td>
<td class="num">(961,468)<span></span>
</td>
<td class="nump">603,642<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_DeferredFederalStateAndLocalTaxExpenseBenefit', window );">Total deferred</a></td>
<td class="num">(4,906,558)<span></span>
</td>
<td class="nump">1,998,328<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_IncomeTaxExpenseBenefit', window );">Total income tax (benefit) expense</a></td>
<td class="num">$ (4,608,985)<span></span>
</td>
<td class="nump">$ 8,977,231<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_CurrentFederalStateAndLocalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 federal, state, and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national, regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="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_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract</td>
</tr>
<tr>
<td style="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_CurrentFederalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentFederalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="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_CurrentStateAndLocalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentStateAndLocalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="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_DeferredFederalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFederalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="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_DeferredFederalStateAndLocalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 federal, state, and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national, regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="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_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract</td>
</tr>
<tr>
<td style="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_DeferredStateAndLocalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="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_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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>70
<FILENAME>R58.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367628533920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Benefit from Income Taxes and Effective Tax Rates (Details)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</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_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Federal income tax expense at statutory rate</a></td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.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_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes', window );">State income tax expense, net of federal tax benefit</a></td>
<td class="nump">4.80%<span></span>
</td>
<td class="nump">3.90%<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_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract', window );"><strong>Permanent differences:</strong></a></td>
<td class="text">&#160;<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_CODX_EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction', window );">- Foreign derived intangible income deduction</a></td>
<td class="nump">1.40%<span></span>
</td>
<td class="num">(3.50%)<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_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent', window );">- Stock based compensation</a></td>
<td class="num">(3.60%)<span></span>
</td>
<td class="nump">0.20%<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_CODX_EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement', window );">- Contingent consideration remeasurement</a></td>
<td class="nump">8.80%<span></span>
</td>
<td class="nump">0.00%<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_CODX_EffectiveIncomeTaxRateReconciliationGoodwillImpairment', window );">- Goodwill impairment</a></td>
<td class="num">(17.10%)<span></span>
</td>
<td class="nump">0.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_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate', window );">- Other permanent differences</a></td>
<td class="num">(0.60%)<span></span>
</td>
<td class="nump">0.30%<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_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment', window );">Research and development credits</a></td>
<td class="nump">11.10%<span></span>
</td>
<td class="num">(2.60%)<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_CODX_EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance', window );">Change in uncertain tax positions</a></td>
<td class="num">(2.10%)<span></span>
</td>
<td class="nump">1.40%<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_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Change in valuation allowance</a></td>
<td class="nump">0.00%<span></span>
</td>
<td class="nump">0.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_EffectiveIncomeTaxRateReconciliationOtherAdjustments', window );">Other</a></td>
<td class="nump">0.80%<span></span>
</td>
<td class="num">(1.00%)<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_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent', window );">Effective income tax rate</a></td>
<td class="nump">24.50%<span></span>
</td>
<td class="nump">19.70%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Effective income tax rate reconciliation change in valuation allowance.</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;">CODX_EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_CODX_EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Effective income tax rate reconciliation contingent consideration remeasurement.</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;">CODX_EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_CODX_EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Effective income tax rate reconcilation foreign derived intangible income deduction.</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;">CODX_EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_CODX_EffectiveIncomeTaxRateReconciliationGoodwillImpairment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Effective income tax rate reconciliation Goodwill impairment.</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;">CODX_EffectiveIncomeTaxRateReconciliationGoodwillImpairment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</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_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of domestic federal statutory tax rate applicable to pretax income (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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="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:percentItemType</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_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the valuation allowance for deferred tax 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="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:percentItemType</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_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the income tax rates.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate</td>
</tr>
<tr>
<td style="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:percentItemType</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_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to research and development expense.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment</td>
</tr>
<tr>
<td style="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:percentItemType</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_EffectiveIncomeTaxRateReconciliationOtherAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments</td>
</tr>
<tr>
<td style="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:percentItemType</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_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference, between reported income tax expense (benefit) and the expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations, that is attributable to tax exempt income, equity in earnings (loss) of an unconsolidated subsidiary, minority interest income (expense), tax holiday, disposition of a business, disposition of an asset, repatriation of foreign earnings, repatriation of foreign earnings jobs creation act of 2004, change in enacted tax rate, prior year income taxes, change in deferred tax asset valuation allowance, and other adjustments.</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_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent</td>
</tr>
<tr>
<td style="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:percentItemType</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_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to expense for award under share-based payment arrangement. Excludes expense determined to be nondeductible upon grant or after for award under share-based payment arrangement.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 740<br> -Section 35<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126970579&amp;loc=d3e23163-113944<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent</td>
</tr>
<tr>
<td style="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:percentItemType</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_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes</td>
</tr>
<tr>
<td style="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:percentItemType</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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="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>71
<FILENAME>R59.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367624182224">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Deferred Tax Assets (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_DeferredTaxAssetsGrossAbstract', window );"><strong>Deferred tax 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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities', window );">Accrued liabilities</a></td>
<td class="nump">$ 98,141<span></span>
</td>
<td class="text"> <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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts', window );">Reserves and allowances</a></td>
<td class="nump">765,004<span></span>
</td>
<td class="nump">166,050<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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits', window );">Deferred compensation</a></td>
<td class="nump">566,076<span></span>
</td>
<td class="nump">393,871<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_DeferredTaxAssetsInProcessResearchAndDevelopment', window );">Research and development credits</a></td>
<td class="nump">3,460,159<span></span>
</td>
<td class="text"> <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_CODX_DeferredTaxAssetsLeaseLiability', window );">Lease liability</a></td>
<td class="nump">85,899<span></span>
</td>
<td class="text"> <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_CODX_DeferredTaxAssetsUniformCapitalization', window );">UNICAP</a></td>
<td class="nump">168,936<span></span>
</td>
<td class="text"> <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_DeferredTaxAssetsGross', window );">Total deferred tax assets</a></td>
<td class="nump">5,144,215<span></span>
</td>
<td class="nump">559,921<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_DeferredTaxLiabilitiesAbstract', window );"><strong>Deferred tax 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_DeferredTaxLiabilitiesPropertyPlantAndEquipment', window );">Property and equipment, net</a></td>
<td class="num">(609,261)<span></span>
</td>
<td class="num">(477,542)<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_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets', window );">Intangibles, net</a></td>
<td class="num">(6,608,914)<span></span>
</td>
<td class="num">(6,743,972)<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_DeferredTaxLiabilitiesPrepaidExpenses', window );">Prepaids</a></td>
<td class="num">(156,053)<span></span>
</td>
<td class="num">(560,093)<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_CODX_DeferredTaxLiabilitiesRightOfUseAsset', window );">Right of use asset</a></td>
<td class="num">(91,873)<span></span>
</td>
<td class="text"> <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_DeferredTaxLiabilitiesOtherComprehensiveIncome', window );">Other comprehensive income</a></td>
<td class="num">(96,101)<span></span>
</td>
<td class="text"> <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_DeferredTaxLiabilitiesOther', window );">Other</a></td>
<td class="text"> <span></span>
</td>
<td class="num">(6,758)<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_DeferredIncomeTaxLiabilities', window );">Total deferred tax liabilities</a></td>
<td class="num">(7,562,202)<span></span>
</td>
<td class="num">(7,788,365)<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_CODX_NetDeferredTaxLiabilities', window );">Net deferred tax (liabilities)</a></td>
<td class="num">(2,417,987)<span></span>
</td>
<td class="num">(7,228,444)<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_DeferredTaxAssetsValuationAllowance', window );">Less valuation allowance</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_DeferredTaxAssetsLiabilitiesNet', window );">Net deferred tax (liabilities)</a></td>
<td class="num">$ (2,417,987)<span></span>
</td>
<td class="num">$ (7,228,444)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_DeferredTaxAssetsLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets lease liability.</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;">CODX_DeferredTaxAssetsLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_DeferredTaxAssetsUniformCapitalization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax assets uniform capitalization.</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;">CODX_DeferredTaxAssetsUniformCapitalization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_DeferredTaxLiabilitiesRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred tax liabilities right of use asset.</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;">CODX_DeferredTaxLiabilitiesRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_CODX_NetDeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Net deferred tax liabilities.</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;">CODX_NetDeferredTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_DeferredIncomeTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax liability attributable to taxable temporary differences.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(b))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(15)(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(a))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilities</td>
</tr>
<tr>
<td style="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_DeferredTaxAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsGross</td>
</tr>
<tr>
<td style="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_DeferredTaxAssetsGrossAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DeferredTaxAssetsGrossAbstract</td>
</tr>
<tr>
<td style="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_DeferredTaxAssetsInProcessResearchAndDevelopment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from in-process research and development costs expensed in connection with a business combination.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment</td>
</tr>
<tr>
<td style="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_DeferredTaxAssetsLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsLiabilitiesNet</td>
</tr>
<tr>
<td style="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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from compensation and benefits costs.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits</td>
</tr>
<tr>
<td style="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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities</td>
</tr>
<tr>
<td style="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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allocation of valuation allowance, of deferred tax asset attributable to deductible temporary difference from allowance for credit loss on accounts receivable.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts</td>
</tr>
<tr>
<td style="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_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax assets for which it is more likely than not that a tax benefit will not be realized.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="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_DeferredTaxLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DeferredTaxLiabilitiesAbstract</td>
</tr>
<tr>
<td style="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_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax liability attributable to taxable temporary differences from intangible assets other than goodwill.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets</td>
</tr>
<tr>
<td style="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_DeferredTaxLiabilitiesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax liability attributable to taxable temporary differences 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesOther</td>
</tr>
<tr>
<td style="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_DeferredTaxLiabilitiesOtherComprehensiveIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax liability attributable to taxable temporary differences from unrealized gains in other comprehensive income.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesOtherComprehensiveIncome</td>
</tr>
<tr>
<td style="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_DeferredTaxLiabilitiesPrepaidExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax consequences attributable to taxable temporary differences derived from prepaid 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;">us-gaap_DeferredTaxLiabilitiesPrepaidExpenses</td>
</tr>
<tr>
<td style="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_DeferredTaxLiabilitiesPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax liability attributable to taxable temporary differences from property, plant, and equipment.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<FILENAME>R60.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367628546016">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Unrecognized Tax Benefits (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</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_UnrecognizedTaxBenefits', window );">Unrecognized tax benefits at the beginning of the year</a></td>
<td class="nump">$ 1,067,853<span></span>
</td>
<td class="nump">$ 447,831<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_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions', window );">Gross increases - current year tax positions</a></td>
<td class="nump">1,045,590<span></span>
</td>
<td class="nump">770,069<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_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions', window );">Gross increases - prior year tax positions</a></td>
<td class="nump">34,035<span></span>
</td>
<td class="text"> <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_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions', window );">Gross decreases- prior year tax positions</a></td>
<td class="num">(677,901)<span></span>
</td>
<td class="num">(150,047)<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_UnrecognizedTaxBenefits', window );">Unrecognized tax benefits at end of year</a></td>
<td class="nump">1,469,577<span></span>
</td>
<td class="nump">1,067,853<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_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued', window );">Interest and penalities in year- end balance</a></td>
<td class="nump">$ 34,035<span></span>
</td>
<td class="text"> <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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="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_UnrecognizedTaxBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 unrecognized tax benefits.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10B<br> -URI https://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=SL37586934-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefits</td>
</tr>
<tr>
<td style="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_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 decrease in unrecognized tax benefits resulting from tax positions taken in prior period tax returns.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions</td>
</tr>
<tr>
<td style="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_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 statutory penalties accrued for a tax position claimed or expected to be claimed by the entity, in its tax return.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32718-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued</td>
</tr>
<tr>
<td style="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_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions</td>
</tr>
<tr>
<td style="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_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 in unrecognized tax benefits resulting from tax positions taken in prior period tax returns.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions</td>
</tr>
<tr>
<td style="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<FILENAME>R61.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367633794096">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Income Taxes (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</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_OperatingLossCarryforwards', window );">Net operating loss carry-forwards</a></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_DeferredTaxAssetsInProcessResearchAndDevelopment', window );">Research and development credit carry forwards</a></td>
<td class="nump">3,460,159<span></span>
</td>
<td class="text"> <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_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal', window );">State net operating loss carryforwards</a></td>
<td class="text"> <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_DeferredTaxAssetsTaxCreditCarryforwards', window );">State research and development credit carryforwards</a></td>
<td class="nump">288,292<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_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate', window );">Unrecognized tax benefits that would impact effective tax rate</a></td>
<td class="nump">$ 1,469,577<span></span>
</td>
<td class="nump">$ 1,067,853<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_DeferredTaxAssetsInProcessResearchAndDevelopment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from in-process research and development costs expensed in connection with a business combination.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment</td>
</tr>
<tr>
<td style="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_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allocation of valuation allowances of deferred tax asset attributable to deductible state and local operating loss carryforwards.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal</td>
</tr>
<tr>
<td style="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_DeferredTaxAssetsTaxCreditCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allocation of a valuation allowances, of deferred tax assets attributable to deductible tax credit carryforwards including, but not limited to, research, foreign, general business, alternative minimum tax, and other deductible tax credit carryforwards.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32559-109319<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxCreditCarryforwards</td>
</tr>
<tr>
<td style="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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="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_OperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32559-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLossCarryforwards</td>
</tr>
<tr>
<td style="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_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 total amount of unrecognized tax benefits that, if recognized, would affect the effective tax rate.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=SL6600010-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate</td>
</tr>
<tr>
<td style="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>74
<FILENAME>R62.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367626006448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Lease Expense (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</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_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseCost', window );">Operating lease costs</a></td>
<td class="nump">$ 346,349<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_ShortTermLeaseCost', window );">Short-term lease costs</a></td>
<td class="nump">384,902<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseCost', window );">Total lease costs</a></td>
<td class="nump">$ 731,251<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_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="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_LeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 lease cost recognized by lessee for lease contract.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseCost</td>
</tr>
<tr>
<td style="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_OperatingLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseCost</td>
</tr>
<tr>
<td style="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_ShortTermLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 short-term lease cost, excluding expense for lease with term of one month or less.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermLeaseCost</td>
</tr>
<tr>
<td style="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>75
<FILENAME>R63.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367630740080">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Schedule of Maturities on Company Lease Liabilities (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2023</a></td>
<td class="nump">$ 303,059<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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2024</a></td>
<td class="nump">50,773<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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2025</a></td>
<td class="text"> <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_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2026</a></td>
<td class="text"> <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_LesseeOperatingLeaseLiabilityPaymentsDueYearFive', window );">2027</a></td>
<td class="text"> <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_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive', window );">Thereafter</a></td>
<td class="text"> <span></span>
</td>
<td class="text">&#160;<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_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total lease payments</a></td>
<td class="nump">353,832<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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less: imputed interest</a></td>
<td class="nump">5,915<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_OperatingLeaseLiability', window );">Present value of operating lease liabilities</a></td>
<td class="nump">347,917<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_OperatingLeaseLiabilityCurrent', window );">Less: current portion</a></td>
<td class="nump">297,209<span></span>
</td>
<td class="text"> <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_OperatingLeaseLiabilityNoncurrent', window );">Long-term portion</a></td>
<td class="nump">$ 50,708<span></span>
</td>
<td class="text"> <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_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="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_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 lessee's undiscounted obligation for lease payment for operating lease.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="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_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive</td>
</tr>
<tr>
<td style="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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="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_LesseeOperatingLeaseLiabilityPaymentsDueYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive</td>
</tr>
<tr>
<td style="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_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="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_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="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_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, 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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="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_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>76
<FILENAME>R64.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367628563888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Other Information Related to Operating Lease (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</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_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Cash paid for operating leases included in operating cash flows</a></td>
<td class="nump">$ 700,821<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_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Remaining lease term of operating leases</a></td>
<td class="text">1 year<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_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Discount rate of operating leases</a></td>
<td class="nump">3.10%<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_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="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_OperatingLeasePayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasePayments</td>
</tr>
<tr>
<td style="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_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate for operating lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="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:percentItemType</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_OperatingLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</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> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="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:durationItemType</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>77
<FILENAME>R65.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367630767280">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Schedule of Treasury Stock (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2022 </div>
<div>shares</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_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockShares', window );">Treasury stock, Beginning Balance</a></td>
<td class="nump">0<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_CODX_RepurchasesOfCommonStock', window );">Repurchases of common stock</a></td>
<td class="nump">3,881,658<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_TreasuryStockShares', window );">Treasury stock, Ending Balance</a></td>
<td class="nump">3,881,658<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_CODX_RepurchasesOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Repurchases of common stock.</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;">CODX_RepurchasesOfCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>CODX_</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_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EquityAbstract</td>
</tr>
<tr>
<td style="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_TreasuryStockShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 common and preferred shares that were previously issued and that were repurchased by the issuing entity and held in treasury on the financial statement date. This stock has no voting rights and receives no dividends.</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> -Publisher FASB<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> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockShares</td>
</tr>
<tr>
<td style="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>78
<FILENAME>R66.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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140367629943440">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Share Repurchase Program (Details Narrative)<br> $ in Millions</strong></div></th>
<th class="th">
<div>Mar. 31, 2022 </div>
<div>USD ($)</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_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramAuthorizedAmount1', window );">Stock repurchase program authorized amount</a></td>
<td class="nump">$ 30.0<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_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EquityAbstract</td>
</tr>
<tr>
<td style="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_StockRepurchaseProgramAuthorizedAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 stock repurchase plan authorized.</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_StockRepurchaseProgramAuthorizedAmount1</td>
</tr>
<tr>
<td style="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>79
<FILENAME>form10-k_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:CODX="http://codiagnostics.com/20221231"
  xmlns:country="http://xbrl.sec.gov/country/2022"
  xmlns:dei="http://xbrl.sec.gov/dei/2022"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2022"
  xmlns:us-gaap="http://fasb.org/us-gaap/2022"
  xmlns:utr="http://www.xbrl.org/2009/utr"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="codx-20221231.xsd" xlink:type="simple"/>
    <context id="From2022-01-01to2022-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="AsOf2023-03-14">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
        </entity>
        <period>
            <instant>2023-03-14</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2020-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</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="AsOf2021-12-31_us-gaap_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</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="AsOf2021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</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="From2021-01-012021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</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="AsOf2022-12-31_us-gaap_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</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="AsOf2022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</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="From2022-01-012022-12-31_custom_CustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:CustomersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_CustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:CustomersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_OneCustomerMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:OneCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_OneCustomerMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:OneCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_TwoCustomersTogetherMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:TwoCustomersTogetherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_TwoCustomersTogetherMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:TwoCustomersTogetherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_FourCustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:FourCustomersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_FourCustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:FourCustomersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_CustomersTogetherMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:CustomersTogetherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_CustomersTogetherMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">CODX:CustomersTogetherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-01-02_us-gaap_AccountingStandardsUpdate201602Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201602Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-01-02</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_CashMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CashMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_CashMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CashMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_FairValueInputsLevel1Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_FairValueInputsLevel1Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_FairValueInputsLevel2Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_FairValueInputsLevel2Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-12-302021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-12-30</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember_custom_ACIAndIDMOMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">CODX:ACIAndIDMOMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-12-302021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-12-30</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-12-302021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-12-30</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">CODX:AdvancedConceptionsIncAndIdahoMolecularIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_MeasurementInputSharePriceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputSharePriceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_MeasurementInputSharePriceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputSharePriceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_MeasurementInputStrikePriceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputStrikePriceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_MeasurementInputStrikePriceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputStrikePriceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_MeasurementInputPriceVolatilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputPriceVolatilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_MeasurementInputPriceVolatilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputPriceVolatilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_MeasurementInputRiskFreeInterestRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputRiskFreeInterestRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_MeasurementInputRiskFreeInterestRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputRiskFreeInterestRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_MeasurementInputExpectedTermMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputExpectedTermMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_MeasurementInputExpectedTermMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputExpectedTermMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_MeasurementInputCostOfCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputCostOfCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_MeasurementInputCostOfCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputCostOfCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_MeasurementInputDiscountRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputDiscountRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_MeasurementInputDiscountRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">us-gaap:MeasurementInputDiscountRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_MeasurementInputEquityVolatilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputEquityVolatilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_MeasurementInputEquityVolatilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputEquityVolatilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_MeasurementInputAssetVolatilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputAssetVolatilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_MeasurementInputAssetVolatilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputAssetVolatilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_MeasurementInputRevenueVolatilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputRevenueVolatilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_MeasurementInputRevenueVolatilityMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:MeasurementInputTypeAxis">CODX:MeasurementInputRevenueVolatilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_EquipmentMember_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_EquipmentMember_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_EquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_EquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdsAndLeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdsAndLeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_LeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_OfficeEquipmentMember_srt_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_OfficeEquipmentMember_srt_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_OfficeEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_OfficeEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_InProcessResearchAndDevelopmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InProcessResearchAndDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_InProcessResearchAndDevelopmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InProcessResearchAndDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_NoncompeteAgreementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_NoncompeteAgreementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_InProcessResearchAndDevelopmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InProcessResearchAndDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_InProcessResearchAndDevelopmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InProcessResearchAndDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_NoncompeteAgreementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_NoncompeteAgreementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_country_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_country_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_RestOfWorldMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">CODX:RestOfWorldMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_RestOfWorldMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">CODX:RestOfWorldMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_country_US_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_country_US_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_RestOfWorldMember_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">CODX:RestOfWorldMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_RestOfWorldMember_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">CODX:RestOfWorldMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_WarrantMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-08-31_custom_TwoThousandFifteenLongTermIncentivePlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">CODX:TwoThousandFifteenLongTermIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-08-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_TwoThousandFifteenLongTermIncentivePlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">CODX:TwoThousandFifteenLongTermIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_StockOptionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">CODX:StockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_StockOptionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">CODX:StockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_custom_StockOptionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">CODX:StockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="AsOf2021-12-31_custom_StockOptionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">CODX:StockOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_WarrantMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-12-31_us-gaap_WarrantMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_custom_ThirdPartiesMember_us-gaap_RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">CODX:ThirdPartiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_custom_ThirdPartiesMember_us-gaap_RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">CODX:ThirdPartiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2020-12-31_us-gaap_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2021-12-31_us-gaap_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_EmployeeStockOptionMember272309781">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="From2022-01-012022-12-31_us-gaap_StockCompensationPlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="From2021-01-012021-12-31_us-gaap_StockCompensationPlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="AsOf2022-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001692415</identifier>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Shares">
        <measure>shares</measure>
    </unit>
    <unit id="USDPShares">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="Pure">
        <measure>pure</measure>
    </unit>
    <unit id="Sqft">
        <measure>utr:acre</measure>
    </unit>
    <dei:EntityCentralIndexKey contextRef="From2022-01-01to2022-12-31">0001692415</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag contextRef="From2022-01-01to2022-12-31">false</dei:AmendmentFlag>
    <dei:DocumentFiscalPeriodFocus contextRef="From2022-01-01to2022-12-31">FY</dei:DocumentFiscalPeriodFocus>
    <us-gaap:IncomeTaxReceivable
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl0066"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl0081"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:Goodwill
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl0083"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:NotesAndLoansReceivableNetNoncurrent
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl0092"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl0111"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:TaxesPayableCurrent
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl0116"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl0119"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl0135"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PreferredStockValue
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl0152"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PreferredStockValue
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl0153"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:TreasuryStockValue
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl0191"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl0201"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0237"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:GainOnRemeasurementOfAcquisitionContingencies
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0255"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0276"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeLossBeforeTax
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0279"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2020-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0302"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2020-12-31_us-gaap_TreasuryStockMember"
      id="xdx2ixbrl0304"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2020-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0306"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2020-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0310"
      unitRef="Shares"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2021-01-012021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0314"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0318"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0319"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="From2021-01-012021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0324"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="From2021-01-012021-12-31_us-gaap_TreasuryStockMember"
      id="xdx2ixbrl0326"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0328"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0329"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2021-01-012021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0334"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0338"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0339"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-012021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0344"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0345"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-012021-12-31_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0347"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-012021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0348"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0352"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2021-12-31_us-gaap_TreasuryStockMember"
      id="xdx2ixbrl0354"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0356"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0360"
      unitRef="Shares"
      xsi:nil="true"/>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0364"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2021-12-31_us-gaap_TreasuryStockMember"
      id="xdx2ixbrl0366"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2021-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0368"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2021-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0372"
      unitRef="Shares"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0376"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2022-01-012022-12-31_us-gaap_TreasuryStockMember"
      id="xdx2ixbrl0378"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0380"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0381"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueOther
      contextRef="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0386"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueOther
      contextRef="From2022-01-012022-12-31_us-gaap_TreasuryStockMember"
      id="xdx2ixbrl0388"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueOther
      contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0390"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueOther
      contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0391"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0396"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="From2022-01-012022-12-31_us-gaap_TreasuryStockMember"
      id="xdx2ixbrl0398"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0400"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0401"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0406"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2022-01-012022-12-31_us-gaap_TreasuryStockMember"
      id="xdx2ixbrl0408"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0410"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0411"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0416"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0417"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0419"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0420"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0421"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0424"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0425"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="From2022-01-012022-12-31_us-gaap_TreasuryStockMember"
      id="xdx2ixbrl0426"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0427"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember"
      id="xdx2ixbrl0429"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:NetIncomeLoss
      contextRef="From2022-01-012022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0432"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:NetIncomeLoss
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      id="xdx2ixbrl0433"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:NetIncomeLoss
      contextRef="From2022-01-012022-12-31_us-gaap_TreasuryStockMember"
      id="xdx2ixbrl0434"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:NetIncomeLoss
      contextRef="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember"
      id="xdx2ixbrl0435"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:NetIncomeLoss
      contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      id="xdx2ixbrl0436"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0440"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0448"
      unitRef="Shares"
      xsi:nil="true"/>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0452"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2022-12-31_us-gaap_ConvertiblePreferredStockMember_us-gaap_PreferredStockMember"
      id="xdx2ixbrl0460"
      unitRef="Shares"
      xsi:nil="true"/>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0477"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:GainOnRemeasurementOfAcquisitionContingencies
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0483"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:NoncashLeaseExpense
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0486"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PaymentsToAcquireMarketableSecurities
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0534"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ProceedsFromDivestitureOfInterestInJointVenture
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl0536"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl0539"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0552"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:InterestPaidNet
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl0569"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:InterestPaidNet
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0570"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0582"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:BusinessAcquisitionMeasurementPeriodAdjustments
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl0585"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:FinancingReceivableAllowanceForCreditLosses
      contextRef="AsOf2022-12-31_us-gaap_CashMember"
      id="xdx2ixbrl0691"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MarketableSecuritiesUnrealizedGainLoss
      contextRef="From2022-01-012022-12-31_us-gaap_CashMember"
      id="xdx2ixbrl0693"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MarketableSecurities
      contextRef="AsOf2022-12-31_us-gaap_CashMember"
      id="xdx2ixbrl0699"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:FinancingReceivableAllowanceForCreditLosses
      contextRef="AsOf2022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0703"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MarketableSecuritiesUnrealizedGainLoss
      contextRef="From2022-01-012022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0705"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MarketableSecurities
      contextRef="AsOf2022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0711"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:FinancingReceivableAllowanceForCreditLosses
      contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0715"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MarketableSecuritiesUnrealizedGainLoss
      contextRef="From2022-01-012022-12-31_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0717"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MarketableSecurities
      contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0723"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:FinancingReceivableAllowanceForCreditLosses
      contextRef="AsOf2022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member"
      id="xdx2ixbrl0727"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:FinancingReceivableAllowanceForCreditLosses
      contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel2Member"
      id="xdx2ixbrl0739"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:FinancingReceivableAllowanceForCreditLosses
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl0751"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:PaymentsToShareHoldersValueAcquisitions
      contextRef="From2021-12-302021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      id="xdx2ixbrl0797"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      id="xdx2ixbrl0819"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      id="xdx2ixbrl0825"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      id="xdx2ixbrl0831"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      id="xdx2ixbrl0837"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities
      contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      id="xdx2ixbrl0843"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements
      contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      id="xdx2ixbrl0849"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      id="xdx2ixbrl0861"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0891"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member"
      id="xdx2ixbrl0893"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MarketableSecurities
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0896"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MarketableSecurities
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member"
      id="xdx2ixbrl0898"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0901"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member"
      id="xdx2ixbrl0903"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:FairValueOfContingentConsiderationToCommonStock
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0906"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:FairValueOfContingentConsiderationToCommonStock
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member"
      id="xdx2ixbrl0907"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:FairValueOfContingentConsiderationToWarrants
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0911"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:FairValueOfContingentConsiderationToWarrants
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member"
      id="xdx2ixbrl0912"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0916"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member"
      id="xdx2ixbrl0917"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MarketableSecurities
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0921"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:MarketableSecurities
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member"
      id="xdx2ixbrl0923"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0926"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member"
      id="xdx2ixbrl0928"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:FairValueOfContingentConsiderationToCommonStock
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0931"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:FairValueOfContingentConsiderationToCommonStock
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member"
      id="xdx2ixbrl0932"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:FairValueOfContingentConsiderationToWarrants
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0936"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:FairValueOfContingentConsiderationToWarrants
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member"
      id="xdx2ixbrl0937"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel1Member"
      id="xdx2ixbrl0941"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member"
      id="xdx2ixbrl0942"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:Goodwill
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl1056"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:Goodwill
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl1058"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2022-12-31_us-gaap_InProcessResearchAndDevelopmentMember"
      id="xdx2ixbrl1066"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2021-12-31_us-gaap_InProcessResearchAndDevelopmentMember"
      id="xdx2ixbrl1088"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2021-12-31_us-gaap_NoncompeteAgreementsMember"
      id="xdx2ixbrl1096"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl1102"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:ContractWithCustomerLiability
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl1170"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1182"
      unitRef="Shares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1222"
      unitRef="Shares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1224"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1226"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1228"
      unitRef="Shares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1230"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1232"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1234"
      unitRef="Shares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1236"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1238"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1252"
      unitRef="Shares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1254"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1256"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1258"
      unitRef="Shares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1260"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1262"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1264"
      unitRef="Shares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1266"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1268"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1358"
      unitRef="Shares"
      xsi:nil="true"/>
    <CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1360"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1362"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1364"
      unitRef="Shares"
      xsi:nil="true"/>
    <CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1366"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1368"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1370"
      unitRef="Shares"
      xsi:nil="true"/>
    <CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1372"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1374"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1390"
      unitRef="Shares"
      xsi:nil="true"/>
    <CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1392"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1394"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1396"
      unitRef="Shares"
      xsi:nil="true"/>
    <CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1398"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1400"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1402"
      unitRef="Shares"
      xsi:nil="true"/>
    <CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1404"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue
      contextRef="From2022-01-01to2022-12-31"
      id="xdx2ixbrl1406"
      unitRef="USDPShares"
      xsi:nil="true"/>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="From2022-01-012022-12-31_us-gaap_StockCompensationPlanMember"
      id="xdx2ixbrl1444"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl1528"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl1537"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:DeferredTaxAssetsLeaseLiability
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl1540"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:DeferredTaxAssetsUniformCapitalization
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl1543"
      unitRef="USD"
      xsi:nil="true"/>
    <CODX:DeferredTaxLiabilitiesRightOfUseAsset
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl1561"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxLiabilitiesOtherComprehensiveIncome
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl1564"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl1566"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl1575"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl1576"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl1583"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl1585"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="From2021-01-012021-12-31"
      id="xdx2ixbrl1605"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued
      contextRef="AsOf2021-12-31"
      id="xdx2ixbrl1617"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl1635"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl1637"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl1639"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="AsOf2022-12-31"
      id="xdx2ixbrl1641"
      unitRef="USD"
      xsi:nil="true"/>
    <dei:DocumentType contextRef="From2022-01-01to2022-12-31">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport contextRef="From2022-01-01to2022-12-31">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate contextRef="From2022-01-01to2022-12-31">2022-12-31</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate contextRef="From2022-01-01to2022-12-31">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus contextRef="From2022-01-01to2022-12-31">2022</dei:DocumentFiscalYearFocus>
    <dei:DocumentTransitionReport contextRef="From2022-01-01to2022-12-31">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="From2022-01-01to2022-12-31">001-38148</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="From2022-01-01to2022-12-31">CO-DIAGNOSTICS, INC.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="From2022-01-01to2022-12-31">UT</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="From2022-01-01to2022-12-31">46-2609396</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="From2022-01-01to2022-12-31">2401 S. Foothill Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="From2022-01-01to2022-12-31">Salt Lake City</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="From2022-01-01to2022-12-31">UT</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="From2022-01-01to2022-12-31">84109</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="From2022-01-01to2022-12-31">(801)</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="From2022-01-01to2022-12-31">438-1036</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="From2022-01-01to2022-12-31">Common Stock</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="From2022-01-01to2022-12-31">CODX</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="From2022-01-01to2022-12-31">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer contextRef="From2022-01-01to2022-12-31">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityWellKnownSeasonedIssuer contextRef="From2022-01-01to2022-12-31">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers contextRef="From2022-01-01to2022-12-31">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus contextRef="From2022-01-01to2022-12-31">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="From2022-01-01to2022-12-31">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="From2022-01-01to2022-12-31">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="From2022-01-01to2022-12-31">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="From2022-01-01to2022-12-31">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag contextRef="From2022-01-01to2022-12-31">false</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany contextRef="From2022-01-01to2022-12-31">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat contextRef="AsOf2022-06-30" decimals="0" unitRef="USD">187000000</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding contextRef="AsOf2023-03-14" decimals="INF" unitRef="Shares">30922607</dei:EntityCommonStockSharesOutstanding>
    <dei:AuditorFirmId contextRef="From2022-01-01to2022-12-31">457</dei:AuditorFirmId>
    <dei:AuditorName contextRef="From2022-01-01to2022-12-31">Haynie &amp; Company</dei:AuditorName>
    <dei:AuditorLocation contextRef="From2022-01-01to2022-12-31">Salt Lake City, Utah</dei:AuditorLocation>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">22973803</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">88607234</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:MarketableSecuritiesCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">58289066</us-gaap:MarketableSecuritiesCurrent>
    <us-gaap:MarketableSecuritiesCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1255266</us-gaap:MarketableSecuritiesCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">3453723</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">20839182</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">5310473</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2004169</us-gaap:InventoryNet>
    <us-gaap:IncomeTaxReceivable contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">1870419</us-gaap:IncomeTaxReceivable>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">761186</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2338444</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:NotesAndLoansReceivableNetCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">75000</us-gaap:NotesAndLoansReceivableNetCurrent>
    <us-gaap:NotesAndLoansReceivableNetCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">75000</us-gaap:NotesAndLoansReceivableNetCurrent>
    <us-gaap:AssetsCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">92733670</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">115119295</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">2539483</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1933216</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">372115</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:Goodwill contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">14706818</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">26768333</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">27195000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:RealEstateInvestmentsJointVentures contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">672679</us-gaap:RealEstateInvestmentsJointVentures>
    <us-gaap:RealEstateInvestmentsJointVentures contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1004953</us-gaap:RealEstateInvestmentsJointVentures>
    <us-gaap:NotesAndLoansReceivableNetNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">75000</us-gaap:NotesAndLoansReceivableNetNoncurrent>
    <us-gaap:Assets contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">123086280</us-gaap:Assets>
    <us-gaap:Assets contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">160034282</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">952297</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">607506</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">934447</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">3859652</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">297209</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:AssetAcquisitionContingentConsiderationLiabilityCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">1689471</us-gaap:AssetAcquisitionContingentConsiderationLiabilityCurrent>
    <us-gaap:AssetAcquisitionContingentConsiderationLiabilityCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">5767304</us-gaap:AssetAcquisitionContingentConsiderationLiabilityCurrent>
    <us-gaap:TaxesPayableCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2213088</us-gaap:TaxesPayableCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">150000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">3873424</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">12597550</us-gaap:LiabilitiesCurrent>
    <CODX:TaxesPayableNoncurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">1181284</CODX:TaxesPayableNoncurrent>
    <CODX:TaxesPayableNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1067853</CODX:TaxesPayableNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">2417987</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">7228444</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">50708</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:AssetAcquisitionContingentConsiderationLiabilityNoncurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">1042885</us-gaap:AssetAcquisitionContingentConsiderationLiabilityNoncurrent>
    <us-gaap:AssetAcquisitionContingentConsiderationLiabilityNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">4665337</us-gaap:AssetAcquisitionContingentConsiderationLiabilityNoncurrent>
    <us-gaap:LiabilitiesNoncurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">4692864</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">12961634</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:Liabilities contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">8566288</us-gaap:Liabilities>
    <us-gaap:Liabilities contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">25559184</us-gaap:Liabilities>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="AsOf2022-12-31"
      decimals="INF"
      unitRef="USDPShares">0.001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="AsOf2021-12-31"
      decimals="INF"
      unitRef="USDPShares">0.001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="AsOf2022-12-31"
      decimals="INF"
      unitRef="USDPShares">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="AsOf2021-12-31"
      decimals="INF"
      unitRef="USDPShares">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">34754265</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">30872607</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">33819862</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">33819862</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">34754</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">33820</us-gaap:CommonStockValue>
    <us-gaap:TreasuryStockShares contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">3881658</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">0</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockValue contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">14211866</us-gaap:TreasuryStockValue>
    <us-gaap:AdditionalPaidInCapital contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">88472934</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">80271999</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">293140</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">39931030</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">54169279</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">114519992</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">134475098</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">123086280</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">160034282</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">34218209</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">97885603</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfRevenue
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">5481092</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">11574944</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">28737117</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">86310659</us-gaap:GrossProfit>
    <us-gaap:SellingAndMarketingExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7344628</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">13397813</us-gaap:SellingAndMarketingExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">14262963</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">11550615</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">17438098</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">14961916</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:DepreciationAndAmortization
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">1282718</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">335363</us-gaap:DepreciationAndAmortization>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">15388546</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:OperatingExpenses
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">55716953</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">40245707</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-26979836</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">46064952</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeOther
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">704044</us-gaap:InterestIncomeOther>
    <us-gaap:InterestIncomeOther
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">45631</us-gaap:InterestIncomeOther>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-138117</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-44355</us-gaap:GainLossOnDispositionOfAssets1>
    <CODX:GainOnRemeasurementOfAcquisitionContingencies
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7899644</CODX:GainOnRemeasurementOfAcquisitionContingencies>
    <us-gaap:GainLossOnSaleOfInvestments
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-332969</us-gaap:GainLossOnSaleOfInvestments>
    <us-gaap:GainLossOnSaleOfInvestments
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-430433</us-gaap:GainLossOnSaleOfInvestments>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">8132602</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-429157</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-18847234</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">45635795</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-4608985</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">8977231</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-14238249</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">36658564</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">293140</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossBeforeTax
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">293140</us-gaap:OtherComprehensiveIncomeLossBeforeTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-13945109</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">36658564</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">-0.45</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">1.27</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">-0.45</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">1.23</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">31479028</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Shares">28874555</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">31479028</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Shares">29903686</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2020-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">28558033</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2020-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">28558</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2020-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="0"
      unitRef="USD">49157236</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2020-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">17510715</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">66696509</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">189225</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">189</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2021-01-012021-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="0"
      unitRef="USD">450209</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">450398</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">444050</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">444</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="From2021-01-012021-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="0"
      unitRef="USD">5508960</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">5509404</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodSharesAcquisitions
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">4628554</us-gaap:StockIssuedDuringPeriodSharesAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">4629</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2021-01-012021-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="0"
      unitRef="USD">25155594</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">25160223</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-012021-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">36658564</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">36658564</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2021-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">33819862</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2021-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">33820</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2021-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="0"
      unitRef="USD">80271999</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2021-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">54169279</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">134475098</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2021-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">33819862</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2021-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">33820</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2021-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="0"
      unitRef="USD">80271999</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2021-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">54169279</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">134475098</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">70791</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">70</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="0"
      unitRef="USD">77800</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">77870</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesOther
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">50000</us-gaap:StockIssuedDuringPeriodSharesOther>
    <us-gaap:StockIssuedDuringPeriodValueOther
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">50</us-gaap:StockIssuedDuringPeriodValueOther>
    <us-gaap:StockIssuedDuringPeriodValueOther
      contextRef="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="0"
      unitRef="USD">99950</us-gaap:StockIssuedDuringPeriodValueOther>
    <us-gaap:StockIssuedDuringPeriodValueOther
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">100000</us-gaap:StockIssuedDuringPeriodValueOther>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">725166</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">725</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="0"
      unitRef="USD">7542498</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7543223</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodSharesAcquisitions
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">88446</us-gaap:StockIssuedDuringPeriodSharesAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">89</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2022-01-012022-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="0"
      unitRef="USD">480687</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">480776</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2022-01-012022-12-31_us-gaap_TreasuryStockMember"
      decimals="0"
      unitRef="USD">14211866</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">14211866</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="From2022-01-012022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      unitRef="USD">293140</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">293140</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:NetIncomeLoss
      contextRef="From2022-01-012022-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">-14238249</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-14238249</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2022-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">34754265</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2022-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">34754</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2022-12-31_us-gaap_TreasuryStockMember"
      decimals="0"
      unitRef="USD">-14211866</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2022-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="0"
      unitRef="USD">88472934</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      unitRef="USD">293140</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2022-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">39931030</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">114519992</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="AsOf2022-12-31_us-gaap_CommonStockMember"
      decimals="INF"
      unitRef="Shares">34754265</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2022-12-31_us-gaap_CommonStockMember"
      decimals="0"
      unitRef="USD">34754</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2022-12-31_us-gaap_TreasuryStockMember"
      decimals="0"
      unitRef="USD">-14211866</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2022-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="0"
      unitRef="USD">88472934</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2022-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      unitRef="USD">293140</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2022-12-31_us-gaap_RetainedEarningsMember"
      decimals="0"
      unitRef="USD">39931030</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">114519992</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-14238249</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">36658564</us-gaap:NetIncomeLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">1282718</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">335363</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">15388546</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:ShareBasedCompensation
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7543223</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">5509404</us-gaap:ShareBasedCompensation>
    <CODX:GainOnRemeasurementOfAcquisitionContingencies
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7899644</CODX:GainOnRemeasurementOfAcquisitionContingencies>
    <CODX:NoncashLeaseExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">30430</CODX:NoncashLeaseExpense>
    <us-gaap:GainLossOnSaleOfInvestments
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-332969</us-gaap:GainLossOnSaleOfInvestments>
    <us-gaap:GainLossOnSaleOfInvestments
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-430433</us-gaap:GainLossOnSaleOfInvestments>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-138117</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-44355</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-4810457</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">930081</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">2428930</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">69672</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-14956529</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">8740851</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">224094</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">2049095</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">3525210</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-5705361</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-150000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-155307</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-2201250</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">2643381</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-2483821</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-299937</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">6568737</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">41081424</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">1427512</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">669463</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">11255266</us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">3080180</us-gaap:ProceedsFromSaleAndMaturityOfMarketableSecurities>
    <us-gaap:PaymentsToAcquireMarketableSecurities
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">67995926</us-gaap:PaymentsToAcquireMarketableSecurities>
    <us-gaap:ProceedsFromDivestitureOfInterestInJointVenture
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">491739</us-gaap:ProceedsFromDivestitureOfInterestInJointVenture>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">-1196243</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-58168172</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">4098699</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">177870</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">450398</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">14211866</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-14033996</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">450398</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-65633431</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">45630521</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">88607234</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">42976713</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">22973803</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">88607234</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">4498742</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">5403769</us-gaap:IncomeTaxesPaidNet>
    <CODX:NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">218906</CODX:NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment>
    <CODX:NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">285659</CODX:NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">681327</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <CODX:BusinessAcquisitionMeasurementPeriodAdjustments
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">1593</CODX:BusinessAcquisitionMeasurementPeriodAdjustments>
    <CODX:StockIssuedDuringPeriodValueAcquisitionsAdjustments
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">480776</CODX:StockIssuedDuringPeriodValueAcquisitionsAdjustments>
    <CODX:StockIssuedDuringPeriodValueAcquisitionsAdjustments
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">25160223</CODX:StockIssuedDuringPeriodValueAcquisitionsAdjustments>
    <CODX:FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">199359</CODX:FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions>
    <CODX:FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">10432641</CODX:FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions>
    <us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_80F_eus-gaap--BusinessDescriptionAndBasisOfPresentationTextBlock_zjnQPQuzYgnf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
1 &#x2013; &lt;span id="xdx_826_zJKQTUZMuaY7"&gt;Overview and Basis of Presentation&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Description
of Business&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 27.35pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Co-Diagnostics,
Inc., a Utah corporation (the &#x201c;Company&#x201d; or &#x201c;CODX&#x201d;), is developing robust and innovative molecular tools for detection
of infectious diseases, liquid biopsy for cancer screening, and agricultural applications. The Company develops, manufactures, and sells
reagents used for diagnostic tests that function via the detection and/or analysis of nucleic acid molecules (DNA or RNA), including
robust and innovative molecular tools for detection of infectious diseases, liquid biopsy for cancer screening, and agricultural applications.
In connection with the sale of our tests we may sell diagnostic equipment from other manufacturers as self-contained lab systems.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Use
of Estimates&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
preparation of financial statements in conformity with generally accepted accounting principles requires management to make estimates
and assumptions that affect the amounts reported in the financial statements and the accompanying notes. Such estimates include receivables
and other long-lived assets, legal and regulatory contingencies, income taxes, share based arrangements, and others. These estimates
and assumptions are based on management&#x2019;s best estimates and judgments. Actual amounts and results could differ from those estimates.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Basis
of Presentation&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
accompanying audited consolidated financial statements of Co-Diagnostics, Inc. and its wholly owned subsidiaries have been prepared to
reflect the financial position, results of operations and cash flows of the Company and have been prepared in accordance with accounting
principles generally accepted in the United States of America (&#x201c;GAAP&#x201d;). All intercompany balances and transactions have been
eliminated.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_80F_eus-gaap--SignificantAccountingPoliciesTextBlock_zbAqft1lx4z4" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
2 &#x2013; &lt;span id="xdx_823_zalKVf3mq66a"&gt;Summary of Significant Accounting Policies&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_843_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_zlP51pzp1Fm8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_860_z7t6FF0tCHfa"&gt;Cash
and Cash Equivalents&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Cash
and cash equivalents consist of cash on hand, money market funds and highly liquid investments with an original maturity date of 90 days
or less from the date of purchase. The fair value of cash equivalents approximated their carrying value as of December 31, 2022 and December
31, 2021. &lt;span style="background-color: white"&gt;The Company has its cash and cash equivalents with a large creditworthy financial institution
and the balance exceeded federally insured limits. The Company has not experienced any losses in such accounts, and management believes
the Company is not exposed to any significant credit risk on cash and cash equivalents.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_84A_eus-gaap--MarketableSecuritiesPolicy_zukDsTCDUWU" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_867_zAnAwzlnRVI1"&gt;Marketable
Investment Securities&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company&#x2019;s marketable investment securities are comprised of investments in certificates of deposit and U.S. Treasury bills and
notes. The Company designates investments in debt securities as available-for-sale. Available-for-sale debt securities with original
maturities of three months or less from the date of purchase are classified within cash and cash equivalents. Available-for-sale debt
securities with original maturities longer than three months are available to fund current operations and are classified as marketable
investment securities, within current assets on the consolidated balance sheets. The Company may sell these securities at any time for
use in its current operations or for other purposes, even prior to maturity. Available-for-sale debt securities are reported at fair
value with the related unrealized gains and losses included in accumulated other comprehensive income (loss), a component of stockholders&#x2019;
equity, net of tax. Realized gains and losses on the sale of marketable securities are determined using the average cost method on a
first-in, first-out basis and recorded in total other income (expense), net in the condensed consolidated statements of operations and
comprehensive income.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
available-for-sale debt securities are subject to a periodic impairment review. For investments in an unrealized loss position, the Company
writes down the amortized cost basis of the investment if it is more likely than not that the Company will be required or will intend
to sell the investment before recovery of its amortized cost basis. For investments not likely to be sold before recovery of the amortized
cost basis, the Company determines whether a credit loss exists by considering information about the collectability of the instrument,
current market conditions, and reasonable and supportable forecasts of economic conditions. The Company recognizes an allowance for credit
losses up to the amount of the unrealized loss when appropriate. Allowances for credit losses and write-downs are recognized in total
other income (expense), net, and unrealized losses not related to credit losses are recognized in accumulated other comprehensive income
(loss). There are no allowances for credit losses recorded for the periods presented.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_845_eus-gaap--TradeAndOtherAccountsReceivablePolicy_zLXd2b4tq6wk" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_863_zLioYMsEtqb2"&gt;Accounts
Receivable&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Trade
accounts receivable are recorded at the invoiced amount (net of allowance) and do not bear interest. The Company maintains an allowance
for doubtful accounts for amounts the Company does not expect to collect. In establishing the required allowance, management considers
historical losses, current market condition, customers&#x2019; financial condition, the age of receivables, and current payment patterns.
Account balances are written off against the allowance once the receivable is deemed uncollectible. Recoveries of trade receivables previously
written off are recorded when collected. At December 31, 2022 total accounts receivable was $&lt;span id="xdx_90F_eus-gaap--AccountsReceivableGrossCurrent_iI_c20221231_zDlFiuwp9ZOi" title="Accounts receivable"&gt;6,552,249&lt;/span&gt; with an allowance for uncollectable
accounts of $&lt;span id="xdx_906_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iI_c20221231_zy6Vob70v6e3" title="Doubtful accounts"&gt;3,098,526&lt;/span&gt; resulting in a net amount of $&lt;span id="xdx_902_eus-gaap--AccountsReceivableNetCurrent_iI_c20221231_zMblppMPrhvh" title="Accounts receivable, net"&gt;3,453,723&lt;/span&gt;. At December 31, 2021 total accounts receivable was $&lt;span id="xdx_90F_eus-gaap--AccountsReceivableGrossCurrent_iI_c20211231_znnRFuR6YZY5" title="Accounts receivable, before allowance for credit loss, current"&gt;21,508,779&lt;/span&gt; with an
allowance for uncollectable accounts of $&lt;span id="xdx_90D_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iI_c20211231_zSFCPnJq6X0e" title="Uncollectable accounts"&gt;669,597&lt;/span&gt; resulting in a net amount of $&lt;span id="xdx_902_eus-gaap--AccountsReceivableNetCurrent_iI_c20211231_zvbwNuncuNT5" title="Accounts receivable, after allowance for credit loss, current"&gt;20,839,182&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_848_eus-gaap--EquityMethodInvestmentsPolicy_z779mF7Byma9" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_869_zjHgYxmsz3w1"&gt;Equity-Method
Investments&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Our
equity method investments are initially recorded at cost and are included in other long-term assets in the accompanying consolidated
balance sheet. We adjust the carrying value of our investment based on our share of the earnings or losses in the periods which they
are reported by the investee until the carrying amount is zero. The earnings or losses are included in other income (expense) in the
accompanying consolidated statements of operations.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_846_eus-gaap--InventoryPolicyTextBlock_z3Sx5h6BggQ2" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_860_zcrLW38mY8hd"&gt;Inventory&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Inventory
is stated at the lower of cost or net-realizable value. Inventory cost is determined on a first-in first-out basis that approximates
average cost in accordance with ASC 330-10-30-12. At December 31, 2022, the Company had $&lt;span id="xdx_90F_eus-gaap--InventoryNet_iI_c20221231_zWb5YMqnf5Kk" title="Inventory"&gt;5,310,473&lt;/span&gt; in inventory, of which $&lt;span id="xdx_90C_eus-gaap--InventoryFinishedGoods_iI_c20221231_zLhdzP0FuwUg" title="Inventory finished goods"&gt;1,327,264&lt;/span&gt;
was finished goods and $&lt;span id="xdx_901_eus-gaap--InventoryRawMaterials_iI_c20221231_ztNkX8lqiEel" title="Inventory raw materials"&gt;3,983,209&lt;/span&gt; was raw materials. At December 31, 2021, the Company had $&lt;span id="xdx_90D_eus-gaap--InventoryNet_iI_c20211231_z9PYMkZ2kXx9" title="Inventory, net"&gt;2,004,169&lt;/span&gt; in inventory, of which $&lt;span id="xdx_90A_eus-gaap--InventoryFinishedGoods_iI_c20211231_z5oFktUyrPL3" title="Inventory, finished goods, gross"&gt;983,088&lt;/span&gt;
was finished goods and $&lt;span id="xdx_90E_eus-gaap--InventoryRawMaterials_iI_c20211231_zZxgiGdF1P33" title="Inventory, raw materials, gross"&gt;1,021,081&lt;/span&gt; was raw materials. The Company establishes reserves to reduce low-moving, obsolete, or unusable inventories
to their estimated useful or scrap values.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_845_eus-gaap--GoodwillAndIntangibleAssetsPolicyTextBlock_zGZ0PwmD2oC6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86C_z9WHLvmIr5Bi"&gt;Goodwill
and Intangible Assets&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Goodwill
represents the excess of the purchase price and related costs over the value assigned to net tangible and identifiable intangible assets
acquired in business combinations. Goodwill and indefinite-lived intangible assets are not amortized, but rather tested for impairment
at least annually on December 31, or more often if and when circumstances indicate that the carrying value may not be recoverable. Finite-lived
intangible assets are amortized over their useful lives.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the year ended December 31, 2022, the Company recognized impairment charges related to goodwill of $&lt;span id="xdx_908_eus-gaap--AssetImpairmentCharges_c20220101__20221231_zQytDLdiVcnd" title="Impairment charges"&gt;15,388,546&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_849_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zCOmrbs4riQa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86F_zQ0J8hnPMV7l"&gt;Long-lived
Assets&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Long-lived
assets, such as property and equipment, are stated at cost less accumulated depreciation and amortization. Depreciation is provided using
the straight-line method over the estimated useful lives of the property, generally from three to five years. Repairs and maintenance
costs are expensed as incurred except when such repairs significantly add to the useful life or productive capacity of the asset, in
which case the repairs are capitalized.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company reviews its long-lived assets, including property and equipment, finite-lived intangible assets, and ROU assets, for impairment
whenever an event or change in facts and circumstances indicates that their carrying amounts may not be recoverable. Recoverability of
these assets is measured by comparing the carrying amount to the estimated undiscounted future cash flows expected to be generated. If
the carrying amount exceeds the undiscounted cash flows, the assets are determined to be impaired and an impairment charge is recognized
as the amount by which the carrying amount exceeds fair value.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_841_eus-gaap--BusinessCombinationsPolicy_z2bYQtSSsvcc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86C_zZYdX3HXTcCf"&gt;Business
Combinations&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;We
estimate the fair value of assets acquired and liabilities assumed in a business combination. Goodwill as of the acquisition date is
measured as the excess of consideration transferred over the net of the acquisition date fair values of the assets acquired and the liabilities
assumed. Such valuations require management to make significant estimates and assumptions, especially with respect to intangible assets.
Management&#x2019;s estimates of fair value are based upon assumptions believed to be reasonable, but which are inherently uncertain and
unpredictable, and as a result, actual results may differ from estimates.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_84E_eus-gaap--RevenueRecognitionPolicyTextBlock_zspZfJUhpuTi" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86B_zM0OA0duB2Y9"&gt;Revenue
Recognition&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company generates revenue from product sales and license sales. The Company recognizes revenue when all of the following criteria are
satisfied: (i) identification of the promised goods or services in the contract; (ii) determination of whether the promised goods or
services are performance obligations, including whether they are distinct in the context of the contract; (iii) measurement of the transaction
price, including the constraint on variable consideration; (iv) allocation of the transaction price to the performance obligations; and
(v) recognition of revenue when, or as the Company satisfies each performance obligation. Based on the criteria above, the Company typically
recognizes revenue upon delivery.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company constrains revenue by giving consideration to factors that could otherwise lead to a probable reversal of revenue. The Company
records any payments received from customers prior to the Company fulfilling its performance obligation(s) as deferred revenue.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_84C_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zhtvVfpavpZj" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_860_zSBwbIjua8Vd"&gt;Deferred
Revenue&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Deferred
revenue primarily consists of payments received from customers prior to the Company fulfilling its performance obligation of providing
the product. When this occurs, the Company records a contract liability as deferred revenue. Deferred revenue is recognized as revenue
as the related performance obligations are satisfied.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_84B_eus-gaap--ResearchAndDevelopmentExpensePolicy_zLp826ztHoOf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_860_zmNKFsgX7tG"&gt;Research
and Development&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Research
and development costs are expensed when incurred. The Company expensed $&lt;span id="xdx_907_eus-gaap--ResearchAndDevelopmentExpense_c20220101__20221231_z5KwSywb3uU6" title="Research and development costs"&gt;17,438,098&lt;/span&gt; and $&lt;span id="xdx_901_eus-gaap--ResearchAndDevelopmentExpense_c20210101__20211231_zLzPeoUeLZ03" title="Research and development costs"&gt;14,961,916&lt;/span&gt; of research and development costs
for the years ended December 31, 2022 and 2021, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_846_eus-gaap--ShareBasedCompensationOptionAndIncentivePlansPolicy_z7m0AvYS3jQb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86E_z8TVatW2ovHh"&gt;Stock-based
Compensation&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has granted stock-based awards, including restricted stock, stock options, stock warrants and restricted stock units (&#x201c;RSUs&#x201d;),
to its employees, certain consultants and members of its board of directors. The Company records stock-based compensation based on the
grant date fair value of the awards and recognizes the fair value of those awards as expense using the straight-line method over the
requisite service period of the award. The Company estimates the grant date fair value of stock options using the Black-Scholes option-pricing
model. &lt;span style="background-color: white"&gt;When an award is forfeited prior to the vesting date, the Company recognizes an adjustment
for the previously recognized expense in the period of the forfeiture.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_84A_eus-gaap--IncomeTaxPolicyTextBlock_zGX4cFrWPc92" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_867_zHBjpEbijS5f"&gt;Income
Taxes&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;The
Company accounts for income taxes in accordance with the liability method of accounting for income taxes. Under this method, d&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;eferred
income tax assets and deferred income tax liabilities represent the tax effect of temporary differences between financial reporting and
tax reporting measured at enacted tax rates in effect for the year in which the differences are expected to reverse. The Company recognizes
only the impact of tax positions that, based on their technical merits, are more likely than not to be sustained upon an audit by the
taxing authority.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Valuation
allowances are provided when it is more-likely-than-not that some or all of the deferred income tax assets may not be realized. In assessing
the need for a valuation allowance, the Company has considered its historical levels of income, expectations of future taxable income
and ongoing tax planning strategies.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Developing
the provision for income taxes, including the effective tax rate and analysis of potential tax exposure items, if any, requires
significant judgment and expertise in federal and state income tax laws, regulations and strategies, including the determination of
deferred income tax assets and liabilities and any estimated valuation allowances deemed necessary to value deferred income tax
assets. Judgments and tax strategies are subject to audit by various taxing authorities. The Company has uncertain income tax
positions in the consolidated financial statements, and adverse determinations by these taxing authorities could have a material
adverse effect on the consolidated financial positions, result of operations, or cash flows.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_848_eus-gaap--EarningsPerSharePolicyTextBlock_zgWJMFuQGg6e" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86F_zrRS800yxWXc"&gt;Net
Income per Share&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Basic
net income or loss per common share is computed by dividing net income or loss applicable to common shareholders by the weighted average
number of shares outstanding during each period.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Diluted
net income or loss per share is computed by dividing net income or loss attributable to common stockholders by the weighted-average number
of shares of common stock outstanding during the period increased by common shares that could be issued upon conversion or exercise of
other outstanding securities to the extent those additional common shares would be dilutive. The dilutive effect of potentially dilutive
securities is reflected in diluted net income or loss per share by application of the treasury stock method. During periods when the
Company is in a net loss position, basic net loss per share is the same as diluted net loss per share as the effects of potentially dilutive
securities are anti-dilutive.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_84B_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zF4isgvWnRa5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_860_zGYzV1hnQeW8"&gt;Comprehensive
Income&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;Comprehensive
income is comprised of unrealized gains and losses on marketable securities, net of income taxes.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_848_eus-gaap--ConcentrationRiskCreditRisk_zBLAQRjUUgI9" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86F_zvToWzpxpSEc"&gt;Concentrations
Risk and Significant Customers&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;The
Company had certain customers which are each responsible for generating &lt;span id="xdx_904_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--CustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zkUQi3pu6Tv3" title="Concentration risk percentage"&gt;&lt;span id="xdx_909_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--CustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zX6u0Rm6gmJh" title="Concentration risk percentage"&gt;10&lt;/span&gt;&lt;/span&gt;% or more of the total revenue for the years ended December
31, 2022 and 2021. One customer accounted for approximately &lt;span id="xdx_90F_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--OneCustomerMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zUjMqCAI0uY2" title="Concentration risk percentage"&gt;&lt;span id="xdx_907_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--OneCustomerMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zQ7C3WjRK7t1" title="Concentration risk percentage"&gt;37&lt;/span&gt;&lt;/span&gt;% and two customers together accounted for approximately &lt;span id="xdx_90F_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--TwoCustomersTogetherMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zSiBVLz4t8q5" title="Total revenue, percentage"&gt;&lt;span id="xdx_906_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--TwoCustomersTogetherMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zq9Skfg7W0Eb" title="Total revenue, percentage"&gt;48&lt;/span&gt;&lt;/span&gt;% of total revenue
for the years ended December 31, 2022 and 2021, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;Three
customers accounted for more than &lt;span id="xdx_902_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--FourCustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zzNino7otFNi" title="Concentration risk percentage"&gt;10&lt;/span&gt;% of accounts receivable, and two customers each accounted for more than &lt;span id="xdx_907_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--FourCustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zNDIuMuno5c2" title="Concentration risk percentage"&gt;10&lt;/span&gt;% of accounts receivable,
at December 31, 2022 and 2021, respectively. These customers together accounted for approximately &lt;span id="xdx_904_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--CustomersTogetherMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zn9o5cgE2otl" title="Concentration risk percentage"&gt;61&lt;/span&gt;% and &lt;span id="xdx_908_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--CustomersTogetherMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zLDBKw7sEXA4" title="Concentration risk percentage"&gt;66&lt;/span&gt;% of accounts receivable
at December 31, 2022 and 2021, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_847_eus-gaap--NewAccountingPronouncementsPolicyPolicyTextBlock_z5TCl01oFX" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_866_zsYzaD3vX8b4"&gt;Recently
Issued Accounting Standards&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;From
time to time, new accounting pronouncements are issued by the Financial Accounting Standards Board (&#x201c;FASB&#x201d;) that are adopted
by the Company as of the specified effective date. If not discussed, management believes that the impact of recently issued standards,
which are not yet effective, will not have a material impact on the Company&#x2019;s financial statements upon adoption.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
June 2016, the FASB issued ASU No. 2016-13, Financial Instruments-Credit Losses (Topic 326) (&#x201c;ASU 2016-13&#x201d;), which requires
the measurement and recognition of expected credit losses for certain financial instruments, which includes the Company&#x2019;s accounts
receivable. ASU 2016-13 replaces the existing incurred loss impairment model with an expected loss methodology, which will result in
more timely recognition of credit losses. The Company adopted ASU 2016-13 on January 1, 2022. The adoption did not have an impact on
the Company&#x2019;s financial statements.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
February 2016, the FASB issued ASU No. 2016-02, Leases (Topic 842) (&#x201c;ASU 2016-02&#x201d;), which requires a lessee to recognize
most leases on the balance sheet as lease liabilities with corresponding right-of-use assets. The objective of ASU 2016-02 is to increase
transparency and comparability among organizations by recognizing lease assets and lease liabilities on the balance sheet and disclosing
key information about leasing arrangements. The recognized lease liabilities and lease assets represent the obligation to make payments
and the right to use or control the use of a specified asset for the lease term, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;On
January 1, 2022, the Company adopted Topic 842 using the modified retrospective approach with the effective date as the date of
initial application. Consequently, results for the year ended December 31, 2022 are presented under Topic
842. No prior period amounts were adjusted and continue to be reported in accordance with previous lease guidance, ASC Topic 840,
Leases. The Company elected the practical expedients available under the provisions of the new standard, including not reassessing
whether expired or existing contracts are or contain leases; not reassessing the classification of expired or existing leases; and
not reassessing the initial direct cost for any existing leases. Upon adoption, the Company recognized an operating lease liability
of $&lt;span id="xdx_908_eus-gaap--OperatingLeaseLiability_iI_c20220102__us-gaap--AdjustmentsForNewAccountingPronouncementsAxis__us-gaap--AccountingStandardsUpdate201602Member_zpFliI9aVtQ7" title="Operating lease liability"&gt;626,699&lt;/span&gt;
and a corresponding operating right-of-use asset of $&lt;span id="xdx_909_eus-gaap--OperatingLeaseRightOfUseAsset_iI_c20220102__us-gaap--AdjustmentsForNewAccountingPronouncementsAxis__us-gaap--AccountingStandardsUpdate201602Member_zYgyvvzDLc4h" title="Operating right use of asset"&gt;681,327&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_85E_zaaL0LNb2LQ3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_843_eus-gaap--CashAndCashEquivalentsPolicyTextBlock_zlP51pzp1Fm8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_860_z7t6FF0tCHfa"&gt;Cash
and Cash Equivalents&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Cash
and cash equivalents consist of cash on hand, money market funds and highly liquid investments with an original maturity date of 90 days
or less from the date of purchase. The fair value of cash equivalents approximated their carrying value as of December 31, 2022 and December
31, 2021. &lt;span style="background-color: white"&gt;The Company has its cash and cash equivalents with a large creditworthy financial institution
and the balance exceeded federally insured limits. The Company has not experienced any losses in such accounts, and management believes
the Company is not exposed to any significant credit risk on cash and cash equivalents.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:MarketableSecuritiesPolicy contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_84A_eus-gaap--MarketableSecuritiesPolicy_zukDsTCDUWU" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_867_zAnAwzlnRVI1"&gt;Marketable
Investment Securities&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company&#x2019;s marketable investment securities are comprised of investments in certificates of deposit and U.S. Treasury bills and
notes. The Company designates investments in debt securities as available-for-sale. Available-for-sale debt securities with original
maturities of three months or less from the date of purchase are classified within cash and cash equivalents. Available-for-sale debt
securities with original maturities longer than three months are available to fund current operations and are classified as marketable
investment securities, within current assets on the consolidated balance sheets. The Company may sell these securities at any time for
use in its current operations or for other purposes, even prior to maturity. Available-for-sale debt securities are reported at fair
value with the related unrealized gains and losses included in accumulated other comprehensive income (loss), a component of stockholders&#x2019;
equity, net of tax. Realized gains and losses on the sale of marketable securities are determined using the average cost method on a
first-in, first-out basis and recorded in total other income (expense), net in the condensed consolidated statements of operations and
comprehensive income.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
available-for-sale debt securities are subject to a periodic impairment review. For investments in an unrealized loss position, the Company
writes down the amortized cost basis of the investment if it is more likely than not that the Company will be required or will intend
to sell the investment before recovery of its amortized cost basis. For investments not likely to be sold before recovery of the amortized
cost basis, the Company determines whether a credit loss exists by considering information about the collectability of the instrument,
current market conditions, and reasonable and supportable forecasts of economic conditions. The Company recognizes an allowance for credit
losses up to the amount of the unrealized loss when appropriate. Allowances for credit losses and write-downs are recognized in total
other income (expense), net, and unrealized losses not related to credit losses are recognized in accumulated other comprehensive income
(loss). There are no allowances for credit losses recorded for the periods presented.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:MarketableSecuritiesPolicy>
    <us-gaap:TradeAndOtherAccountsReceivablePolicy contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_845_eus-gaap--TradeAndOtherAccountsReceivablePolicy_zLXd2b4tq6wk" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_863_zLioYMsEtqb2"&gt;Accounts
Receivable&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Trade
accounts receivable are recorded at the invoiced amount (net of allowance) and do not bear interest. The Company maintains an allowance
for doubtful accounts for amounts the Company does not expect to collect. In establishing the required allowance, management considers
historical losses, current market condition, customers&#x2019; financial condition, the age of receivables, and current payment patterns.
Account balances are written off against the allowance once the receivable is deemed uncollectible. Recoveries of trade receivables previously
written off are recorded when collected. At December 31, 2022 total accounts receivable was $&lt;span id="xdx_90F_eus-gaap--AccountsReceivableGrossCurrent_iI_c20221231_zDlFiuwp9ZOi" title="Accounts receivable"&gt;6,552,249&lt;/span&gt; with an allowance for uncollectable
accounts of $&lt;span id="xdx_906_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iI_c20221231_zy6Vob70v6e3" title="Doubtful accounts"&gt;3,098,526&lt;/span&gt; resulting in a net amount of $&lt;span id="xdx_902_eus-gaap--AccountsReceivableNetCurrent_iI_c20221231_zMblppMPrhvh" title="Accounts receivable, net"&gt;3,453,723&lt;/span&gt;. At December 31, 2021 total accounts receivable was $&lt;span id="xdx_90F_eus-gaap--AccountsReceivableGrossCurrent_iI_c20211231_znnRFuR6YZY5" title="Accounts receivable, before allowance for credit loss, current"&gt;21,508,779&lt;/span&gt; with an
allowance for uncollectable accounts of $&lt;span id="xdx_90D_eus-gaap--AllowanceForDoubtfulAccountsReceivableCurrent_iI_c20211231_zSFCPnJq6X0e" title="Uncollectable accounts"&gt;669,597&lt;/span&gt; resulting in a net amount of $&lt;span id="xdx_902_eus-gaap--AccountsReceivableNetCurrent_iI_c20211231_zvbwNuncuNT5" title="Accounts receivable, after allowance for credit loss, current"&gt;20,839,182&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:TradeAndOtherAccountsReceivablePolicy>
    <us-gaap:AccountsReceivableGrossCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">6552249</us-gaap:AccountsReceivableGrossCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">3098526</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">3453723</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableGrossCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">21508779</us-gaap:AccountsReceivableGrossCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">669597</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">20839182</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:EquityMethodInvestmentsPolicy contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_848_eus-gaap--EquityMethodInvestmentsPolicy_z779mF7Byma9" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_869_zjHgYxmsz3w1"&gt;Equity-Method
Investments&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Our
equity method investments are initially recorded at cost and are included in other long-term assets in the accompanying consolidated
balance sheet. We adjust the carrying value of our investment based on our share of the earnings or losses in the periods which they
are reported by the investee until the carrying amount is zero. The earnings or losses are included in other income (expense) in the
accompanying consolidated statements of operations.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:EquityMethodInvestmentsPolicy>
    <us-gaap:InventoryPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_846_eus-gaap--InventoryPolicyTextBlock_z3Sx5h6BggQ2" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_860_zcrLW38mY8hd"&gt;Inventory&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Inventory
is stated at the lower of cost or net-realizable value. Inventory cost is determined on a first-in first-out basis that approximates
average cost in accordance with ASC 330-10-30-12. At December 31, 2022, the Company had $&lt;span id="xdx_90F_eus-gaap--InventoryNet_iI_c20221231_zWb5YMqnf5Kk" title="Inventory"&gt;5,310,473&lt;/span&gt; in inventory, of which $&lt;span id="xdx_90C_eus-gaap--InventoryFinishedGoods_iI_c20221231_zLhdzP0FuwUg" title="Inventory finished goods"&gt;1,327,264&lt;/span&gt;
was finished goods and $&lt;span id="xdx_901_eus-gaap--InventoryRawMaterials_iI_c20221231_ztNkX8lqiEel" title="Inventory raw materials"&gt;3,983,209&lt;/span&gt; was raw materials. At December 31, 2021, the Company had $&lt;span id="xdx_90D_eus-gaap--InventoryNet_iI_c20211231_z9PYMkZ2kXx9" title="Inventory, net"&gt;2,004,169&lt;/span&gt; in inventory, of which $&lt;span id="xdx_90A_eus-gaap--InventoryFinishedGoods_iI_c20211231_z5oFktUyrPL3" title="Inventory, finished goods, gross"&gt;983,088&lt;/span&gt;
was finished goods and $&lt;span id="xdx_90E_eus-gaap--InventoryRawMaterials_iI_c20211231_zZxgiGdF1P33" title="Inventory, raw materials, gross"&gt;1,021,081&lt;/span&gt; was raw materials. The Company establishes reserves to reduce low-moving, obsolete, or unusable inventories
to their estimated useful or scrap values.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:InventoryNet contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">5310473</us-gaap:InventoryNet>
    <us-gaap:InventoryFinishedGoods contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">1327264</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryRawMaterials contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">3983209</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2004169</us-gaap:InventoryNet>
    <us-gaap:InventoryFinishedGoods contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">983088</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryRawMaterials contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1021081</us-gaap:InventoryRawMaterials>
    <us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_845_eus-gaap--GoodwillAndIntangibleAssetsPolicyTextBlock_zGZ0PwmD2oC6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86C_z9WHLvmIr5Bi"&gt;Goodwill
and Intangible Assets&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Goodwill
represents the excess of the purchase price and related costs over the value assigned to net tangible and identifiable intangible assets
acquired in business combinations. Goodwill and indefinite-lived intangible assets are not amortized, but rather tested for impairment
at least annually on December 31, or more often if and when circumstances indicate that the carrying value may not be recoverable. Finite-lived
intangible assets are amortized over their useful lives.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;During
the year ended December 31, 2022, the Company recognized impairment charges related to goodwill of $&lt;span id="xdx_908_eus-gaap--AssetImpairmentCharges_c20220101__20221231_zQytDLdiVcnd" title="Impairment charges"&gt;15,388,546&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock>
    <us-gaap:AssetImpairmentCharges
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">15388546</us-gaap:AssetImpairmentCharges>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_849_eus-gaap--ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_zCOmrbs4riQa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86F_zQ0J8hnPMV7l"&gt;Long-lived
Assets&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Long-lived
assets, such as property and equipment, are stated at cost less accumulated depreciation and amortization. Depreciation is provided using
the straight-line method over the estimated useful lives of the property, generally from three to five years. Repairs and maintenance
costs are expensed as incurred except when such repairs significantly add to the useful life or productive capacity of the asset, in
which case the repairs are capitalized.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company reviews its long-lived assets, including property and equipment, finite-lived intangible assets, and ROU assets, for impairment
whenever an event or change in facts and circumstances indicates that their carrying amounts may not be recoverable. Recoverability of
these assets is measured by comparing the carrying amount to the estimated undiscounted future cash flows expected to be generated. If
the carrying amount exceeds the undiscounted cash flows, the assets are determined to be impaired and an impairment charge is recognized
as the amount by which the carrying amount exceeds fair value.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:BusinessCombinationsPolicy contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_841_eus-gaap--BusinessCombinationsPolicy_z2bYQtSSsvcc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86C_zZYdX3HXTcCf"&gt;Business
Combinations&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;We
estimate the fair value of assets acquired and liabilities assumed in a business combination. Goodwill as of the acquisition date is
measured as the excess of consideration transferred over the net of the acquisition date fair values of the assets acquired and the liabilities
assumed. Such valuations require management to make significant estimates and assumptions, especially with respect to intangible assets.
Management&#x2019;s estimates of fair value are based upon assumptions believed to be reasonable, but which are inherently uncertain and
unpredictable, and as a result, actual results may differ from estimates.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:BusinessCombinationsPolicy>
    <us-gaap:RevenueRecognitionPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_84E_eus-gaap--RevenueRecognitionPolicyTextBlock_zspZfJUhpuTi" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86B_zM0OA0duB2Y9"&gt;Revenue
Recognition&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company generates revenue from product sales and license sales. The Company recognizes revenue when all of the following criteria are
satisfied: (i) identification of the promised goods or services in the contract; (ii) determination of whether the promised goods or
services are performance obligations, including whether they are distinct in the context of the contract; (iii) measurement of the transaction
price, including the constraint on variable consideration; (iv) allocation of the transaction price to the performance obligations; and
(v) recognition of revenue when, or as the Company satisfies each performance obligation. Based on the criteria above, the Company typically
recognizes revenue upon delivery.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company constrains revenue by giving consideration to factors that could otherwise lead to a probable reversal of revenue. The Company
records any payments received from customers prior to the Company fulfilling its performance obligation(s) as deferred revenue.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:RevenueRecognitionPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_84C_eus-gaap--RevenueFromContractWithCustomerPolicyTextBlock_zhtvVfpavpZj" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_860_zSBwbIjua8Vd"&gt;Deferred
Revenue&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Deferred
revenue primarily consists of payments received from customers prior to the Company fulfilling its performance obligation of providing
the product. When this occurs, the Company records a contract liability as deferred revenue. Deferred revenue is recognized as revenue
as the related performance obligations are satisfied.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <us-gaap:ResearchAndDevelopmentExpensePolicy contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_84B_eus-gaap--ResearchAndDevelopmentExpensePolicy_zLp826ztHoOf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_860_zmNKFsgX7tG"&gt;Research
and Development&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Research
and development costs are expensed when incurred. The Company expensed $&lt;span id="xdx_907_eus-gaap--ResearchAndDevelopmentExpense_c20220101__20221231_z5KwSywb3uU6" title="Research and development costs"&gt;17,438,098&lt;/span&gt; and $&lt;span id="xdx_901_eus-gaap--ResearchAndDevelopmentExpense_c20210101__20211231_zLzPeoUeLZ03" title="Research and development costs"&gt;14,961,916&lt;/span&gt; of research and development costs
for the years ended December 31, 2022 and 2021, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:ResearchAndDevelopmentExpensePolicy>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">17438098</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">14961916</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_846_eus-gaap--ShareBasedCompensationOptionAndIncentivePlansPolicy_z7m0AvYS3jQb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86E_z8TVatW2ovHh"&gt;Stock-based
Compensation&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has granted stock-based awards, including restricted stock, stock options, stock warrants and restricted stock units (&#x201c;RSUs&#x201d;),
to its employees, certain consultants and members of its board of directors. The Company records stock-based compensation based on the
grant date fair value of the awards and recognizes the fair value of those awards as expense using the straight-line method over the
requisite service period of the award. The Company estimates the grant date fair value of stock options using the Black-Scholes option-pricing
model. &lt;span style="background-color: white"&gt;When an award is forfeited prior to the vesting date, the Company recognizes an adjustment
for the previously recognized expense in the period of the forfeiture.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:IncomeTaxPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_84A_eus-gaap--IncomeTaxPolicyTextBlock_zGX4cFrWPc92" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_867_zHBjpEbijS5f"&gt;Income
Taxes&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;The
Company accounts for income taxes in accordance with the liability method of accounting for income taxes. Under this method, d&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;eferred
income tax assets and deferred income tax liabilities represent the tax effect of temporary differences between financial reporting and
tax reporting measured at enacted tax rates in effect for the year in which the differences are expected to reverse. The Company recognizes
only the impact of tax positions that, based on their technical merits, are more likely than not to be sustained upon an audit by the
taxing authority.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Valuation
allowances are provided when it is more-likely-than-not that some or all of the deferred income tax assets may not be realized. In assessing
the need for a valuation allowance, the Company has considered its historical levels of income, expectations of future taxable income
and ongoing tax planning strategies.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Developing
the provision for income taxes, including the effective tax rate and analysis of potential tax exposure items, if any, requires
significant judgment and expertise in federal and state income tax laws, regulations and strategies, including the determination of
deferred income tax assets and liabilities and any estimated valuation allowances deemed necessary to value deferred income tax
assets. Judgments and tax strategies are subject to audit by various taxing authorities. The Company has uncertain income tax
positions in the consolidated financial statements, and adverse determinations by these taxing authorities could have a material
adverse effect on the consolidated financial positions, result of operations, or cash flows.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:EarningsPerSharePolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_848_eus-gaap--EarningsPerSharePolicyTextBlock_zgWJMFuQGg6e" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86F_zrRS800yxWXc"&gt;Net
Income per Share&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Basic
net income or loss per common share is computed by dividing net income or loss applicable to common shareholders by the weighted average
number of shares outstanding during each period.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Diluted
net income or loss per share is computed by dividing net income or loss attributable to common stockholders by the weighted-average number
of shares of common stock outstanding during the period increased by common shares that could be issued upon conversion or exercise of
other outstanding securities to the extent those additional common shares would be dilutive. The dilutive effect of potentially dilutive
securities is reflected in diluted net income or loss per share by application of the treasury stock method. During periods when the
Company is in a net loss position, basic net loss per share is the same as diluted net loss per share as the effects of potentially dilutive
securities are anti-dilutive.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:ComprehensiveIncomePolicyPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_84B_eus-gaap--ComprehensiveIncomePolicyPolicyTextBlock_zF4isgvWnRa5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_860_zGYzV1hnQeW8"&gt;Comprehensive
Income&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;Comprehensive
income is comprised of unrealized gains and losses on marketable securities, net of income taxes.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:ComprehensiveIncomePolicyPolicyTextBlock>
    <us-gaap:ConcentrationRiskCreditRisk contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_848_eus-gaap--ConcentrationRiskCreditRisk_zBLAQRjUUgI9" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_86F_zvToWzpxpSEc"&gt;Concentrations
Risk and Significant Customers&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;The
Company had certain customers which are each responsible for generating &lt;span id="xdx_904_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--CustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zkUQi3pu6Tv3" title="Concentration risk percentage"&gt;&lt;span id="xdx_909_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--CustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zX6u0Rm6gmJh" title="Concentration risk percentage"&gt;10&lt;/span&gt;&lt;/span&gt;% or more of the total revenue for the years ended December
31, 2022 and 2021. One customer accounted for approximately &lt;span id="xdx_90F_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--OneCustomerMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zUjMqCAI0uY2" title="Concentration risk percentage"&gt;&lt;span id="xdx_907_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--OneCustomerMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zQ7C3WjRK7t1" title="Concentration risk percentage"&gt;37&lt;/span&gt;&lt;/span&gt;% and two customers together accounted for approximately &lt;span id="xdx_90F_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--TwoCustomersTogetherMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zSiBVLz4t8q5" title="Total revenue, percentage"&gt;&lt;span id="xdx_906_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--TwoCustomersTogetherMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember_zq9Skfg7W0Eb" title="Total revenue, percentage"&gt;48&lt;/span&gt;&lt;/span&gt;% of total revenue
for the years ended December 31, 2022 and 2021, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;Three
customers accounted for more than &lt;span id="xdx_902_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--FourCustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zzNino7otFNi" title="Concentration risk percentage"&gt;10&lt;/span&gt;% of accounts receivable, and two customers each accounted for more than &lt;span id="xdx_907_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--FourCustomersMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zNDIuMuno5c2" title="Concentration risk percentage"&gt;10&lt;/span&gt;% of accounts receivable,
at December 31, 2022 and 2021, respectively. These customers together accounted for approximately &lt;span id="xdx_904_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20220101__20221231__srt--MajorCustomersAxis__custom--CustomersTogetherMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zn9o5cgE2otl" title="Concentration risk percentage"&gt;61&lt;/span&gt;% and &lt;span id="xdx_908_eus-gaap--ConcentrationRiskPercentage1_pid_dp_uPure_c20210101__20211231__srt--MajorCustomersAxis__custom--CustomersTogetherMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--CustomerConcentrationRiskMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--AccountsReceivableMember_zLDBKw7sEXA4" title="Concentration risk percentage"&gt;66&lt;/span&gt;% of accounts receivable
at December 31, 2022 and 2021, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:ConcentrationRiskCreditRisk>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="From2022-01-012022-12-31_custom_CustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember"
      decimals="INF"
      unitRef="Pure">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="From2021-01-012021-12-31_custom_CustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember"
      decimals="INF"
      unitRef="Pure">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="From2022-01-012022-12-31_custom_OneCustomerMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember"
      decimals="INF"
      unitRef="Pure">0.37</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="From2021-01-012021-12-31_custom_OneCustomerMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember"
      decimals="INF"
      unitRef="Pure">0.37</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="From2022-01-012022-12-31_custom_TwoCustomersTogetherMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember"
      decimals="INF"
      unitRef="Pure">0.48</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="From2021-01-012021-12-31_custom_TwoCustomersTogetherMember_us-gaap_SalesRevenueNetMember_us-gaap_CustomerConcentrationRiskMember"
      decimals="INF"
      unitRef="Pure">0.48</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="From2022-01-012022-12-31_custom_FourCustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember"
      decimals="INF"
      unitRef="Pure">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="From2021-01-012021-12-31_custom_FourCustomersMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember"
      decimals="INF"
      unitRef="Pure">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="From2022-01-012022-12-31_custom_CustomersTogetherMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember"
      decimals="INF"
      unitRef="Pure">0.61</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="From2021-01-012021-12-31_custom_CustomersTogetherMember_us-gaap_CustomerConcentrationRiskMember_us-gaap_AccountsReceivableMember"
      decimals="INF"
      unitRef="Pure">0.66</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_847_eus-gaap--NewAccountingPronouncementsPolicyPolicyTextBlock_z5TCl01oFX" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span id="xdx_866_zsYzaD3vX8b4"&gt;Recently
Issued Accounting Standards&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;From
time to time, new accounting pronouncements are issued by the Financial Accounting Standards Board (&#x201c;FASB&#x201d;) that are adopted
by the Company as of the specified effective date. If not discussed, management believes that the impact of recently issued standards,
which are not yet effective, will not have a material impact on the Company&#x2019;s financial statements upon adoption.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
June 2016, the FASB issued ASU No. 2016-13, Financial Instruments-Credit Losses (Topic 326) (&#x201c;ASU 2016-13&#x201d;), which requires
the measurement and recognition of expected credit losses for certain financial instruments, which includes the Company&#x2019;s accounts
receivable. ASU 2016-13 replaces the existing incurred loss impairment model with an expected loss methodology, which will result in
more timely recognition of credit losses. The Company adopted ASU 2016-13 on January 1, 2022. The adoption did not have an impact on
the Company&#x2019;s financial statements.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
February 2016, the FASB issued ASU No. 2016-02, Leases (Topic 842) (&#x201c;ASU 2016-02&#x201d;), which requires a lessee to recognize
most leases on the balance sheet as lease liabilities with corresponding right-of-use assets. The objective of ASU 2016-02 is to increase
transparency and comparability among organizations by recognizing lease assets and lease liabilities on the balance sheet and disclosing
key information about leasing arrangements. The recognized lease liabilities and lease assets represent the obligation to make payments
and the right to use or control the use of a specified asset for the lease term, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;On
January 1, 2022, the Company adopted Topic 842 using the modified retrospective approach with the effective date as the date of
initial application. Consequently, results for the year ended December 31, 2022 are presented under Topic
842. No prior period amounts were adjusted and continue to be reported in accordance with previous lease guidance, ASC Topic 840,
Leases. The Company elected the practical expedients available under the provisions of the new standard, including not reassessing
whether expired or existing contracts are or contain leases; not reassessing the classification of expired or existing leases; and
not reassessing the initial direct cost for any existing leases. Upon adoption, the Company recognized an operating lease liability
of $&lt;span id="xdx_908_eus-gaap--OperatingLeaseLiability_iI_c20220102__us-gaap--AdjustmentsForNewAccountingPronouncementsAxis__us-gaap--AccountingStandardsUpdate201602Member_zpFliI9aVtQ7" title="Operating lease liability"&gt;626,699&lt;/span&gt;
and a corresponding operating right-of-use asset of $&lt;span id="xdx_909_eus-gaap--OperatingLeaseRightOfUseAsset_iI_c20220102__us-gaap--AdjustmentsForNewAccountingPronouncementsAxis__us-gaap--AccountingStandardsUpdate201602Member_zYgyvvzDLc4h" title="Operating right use of asset"&gt;681,327&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:OperatingLeaseLiability
      contextRef="AsOf2022-01-02_us-gaap_AccountingStandardsUpdate201602Member"
      decimals="0"
      unitRef="USD">626699</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="AsOf2022-01-02_us-gaap_AccountingStandardsUpdate201602Member"
      decimals="0"
      unitRef="USD">681327</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:CashCashEquivalentsAndMarketableSecuritiesTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_807_eus-gaap--CashCashEquivalentsAndMarketableSecuritiesTextBlock_zxbOl7ZthPph" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&lt;span&gt;Note
3 - &lt;span id="xdx_82D_zS2LVnVl49zi"&gt;Cash, Cash Equivalents, and Financial Instruments&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_894_eus-gaap--ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock_zPHr4pCewLL1" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;The
following table shows the Company&#x2019;s cash, cash equivalents, and marketable investment securities by significant investment category
as of December 31, 2022:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B3_zwWjoJQzKBB1" style="display: none"&gt;Schedule
of Cash, Cash Equivalents, and Marketable Investment Securities&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="22" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Adjusted Cost&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Allowance for Credit Losses&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Total Unrealized Gains / (Losses)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Fair Value&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Cash and Cash Equivalents&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Marketable Securities&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 40%; padding-left: 10pt"&gt;Cash&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zkc38h6lxtgh" style="width: 6%; text-align: right" title="Adjusted Cost"&gt;12,834,444&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zgY1Ay4hp6m2" style="width: 6%; text-align: right" title="Allowance for Credit Losses"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&lt;span style="-sec-ix-hidden: xdx2ixbrl0691"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_z960b4wyb304" style="width: 6%; text-align: right" title="Total Unrealized Gains / (Losses)"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0693"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zCQg7iql5BH2" style="width: 6%; text-align: right" title="Fair Value"&gt;12,834,444&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zkkCTO5jGJHe" style="width: 6%; text-align: right" title="Cash and Cash Equivalents"&gt;12,834,444&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zgSRbdPQGMS4" style="width: 6%; text-align: right" title="Marketable Securities"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0699"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Level 1:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Money market funds&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zN8ZWCTwYsR9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Adjusted Cost"&gt;146,359&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z2uEjZApc1ei" style="border-bottom: Black 1.5pt solid; text-align: right" title="Allowance for Credit Losses"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0703"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z6l5rq1DMLl1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total Unrealized Gains / (Losses)"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0705"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zPPwpEbuQB9b" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair Value"&gt;146,359&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zfMKpxphIZvg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cash and Cash Equivalents"&gt;146,359&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zGlPYXRtRy2g" style="border-bottom: Black 1.5pt solid; text-align: right" title="Marketable Securities"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0711"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Subtotal&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zLNjaG6IIuqf" style="text-align: right" title="Adjusted Cost"&gt;146,359&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z1z8pbG3jQb9" style="text-align: right" title="Allowance for Credit Losses"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0715"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zf8D2XjauWdg" style="text-align: right" title="Total Unrealized Gains / (Losses)"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0717"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zObA7U7vYnj7" style="text-align: right" title="Fair Value"&gt;146,359&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zOieXp2sZSd9" style="text-align: right" title="Cash and Cash Equivalents"&gt;146,359&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z0bhGlztCasj" style="text-align: right" title="Marketable Securities"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0723"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Level 2:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;U.S. treasury securities&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z5nMmBtzAvXk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Adjusted Cost"&gt;67,892,825&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zPw9cDVl9wd2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Allowance for Credit Losses"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0727"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zRpCJUWdWd44" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total Unrealized Gains / (Losses)"&gt;389,241&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z51ErO3mpkob" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair Value"&gt;68,282,066&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zfjODKPyQVqk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cash and Cash Equivalents"&gt;9,993,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zcNeDpsmclh9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Marketable Securities"&gt;58,289,066&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;Subtotal&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zJhp1AxNUV75" style="border-bottom: Black 1.5pt solid; text-align: right" title="Adjusted Cost"&gt;67,892,825&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zA5tutCNr0f6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Allowance for Credit Losses"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0739"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zTYUN6xrBmx5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total Unrealized Gains / (Losses)"&gt;389,241&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z8QGNiFtKry9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair Value"&gt;68,282,066&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zS67B0v91gdc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cash and Cash Equivalents"&gt;9,993,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zhBjznmJ0Qk1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Marketable Securities"&gt;58,289,066&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 10pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231_zdDQuO0jFhJ2" style="border-bottom: Black 2.5pt double; text-align: right" title="Adjusted Cost"&gt;80,873,628&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231_zyQR38uUUdp8" style="border-bottom: Black 2.5pt double; text-align: right" title="Allowance for Credit Losses"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0751"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231_zGj6bL8pSmQ6" style="border-bottom: Black 2.5pt double; text-align: right" title="Total Unrealized Gains / (Losses)"&gt;389,241&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--TradingSecurities_iI_c20221231_zJOqkFxoHU8h" style="border-bottom: Black 2.5pt double; text-align: right" title="Fair Value"&gt;81,262,869&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231_ziAmHZwZNT3h" style="border-bottom: Black 2.5pt double; text-align: right" title="Cash and Cash Equivalents"&gt;22,973,803&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--MarketableSecurities_iI_c20221231_zSyktWhms3Zc" style="border-bottom: Black 2.5pt double; text-align: right" title="Marketable Securities"&gt;58,289,066&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AD_z3B7ivT1bCm1" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;Marketable
investment securities held as of December 31, 2022 mature over the next 12 months.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:CashCashEquivalentsAndMarketableSecuritiesTextBlock>
    <us-gaap:ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_894_eus-gaap--ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock_zPHr4pCewLL1" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;The
following table shows the Company&#x2019;s cash, cash equivalents, and marketable investment securities by significant investment category
as of December 31, 2022:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B3_zwWjoJQzKBB1" style="display: none"&gt;Schedule
of Cash, Cash Equivalents, and Marketable Investment Securities&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="22" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Adjusted Cost&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Allowance for Credit Losses&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Total Unrealized Gains / (Losses)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Fair Value&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Cash and Cash Equivalents&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Marketable Securities&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 40%; padding-left: 10pt"&gt;Cash&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zkc38h6lxtgh" style="width: 6%; text-align: right" title="Adjusted Cost"&gt;12,834,444&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zgY1Ay4hp6m2" style="width: 6%; text-align: right" title="Allowance for Credit Losses"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&lt;span style="-sec-ix-hidden: xdx2ixbrl0691"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_z960b4wyb304" style="width: 6%; text-align: right" title="Total Unrealized Gains / (Losses)"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0693"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zCQg7iql5BH2" style="width: 6%; text-align: right" title="Fair Value"&gt;12,834,444&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zkkCTO5jGJHe" style="width: 6%; text-align: right" title="Cash and Cash Equivalents"&gt;12,834,444&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--CashMember_zgSRbdPQGMS4" style="width: 6%; text-align: right" title="Marketable Securities"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0699"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Level 1:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Money market funds&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zN8ZWCTwYsR9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Adjusted Cost"&gt;146,359&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z2uEjZApc1ei" style="border-bottom: Black 1.5pt solid; text-align: right" title="Allowance for Credit Losses"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0703"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z6l5rq1DMLl1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total Unrealized Gains / (Losses)"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0705"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zPPwpEbuQB9b" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair Value"&gt;146,359&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zfMKpxphIZvg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cash and Cash Equivalents"&gt;146,359&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--MoneyMarketFundsMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zGlPYXRtRy2g" style="border-bottom: Black 1.5pt solid; text-align: right" title="Marketable Securities"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0711"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Subtotal&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zLNjaG6IIuqf" style="text-align: right" title="Adjusted Cost"&gt;146,359&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z1z8pbG3jQb9" style="text-align: right" title="Allowance for Credit Losses"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0715"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zf8D2XjauWdg" style="text-align: right" title="Total Unrealized Gains / (Losses)"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0717"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zObA7U7vYnj7" style="text-align: right" title="Fair Value"&gt;146,359&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_zOieXp2sZSd9" style="text-align: right" title="Cash and Cash Equivalents"&gt;146,359&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z0bhGlztCasj" style="text-align: right" title="Marketable Securities"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0723"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Level 2:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;U.S. treasury securities&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z5nMmBtzAvXk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Adjusted Cost"&gt;67,892,825&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zPw9cDVl9wd2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Allowance for Credit Losses"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0727"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zRpCJUWdWd44" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total Unrealized Gains / (Losses)"&gt;389,241&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z51ErO3mpkob" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair Value"&gt;68,282,066&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zfjODKPyQVqk" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cash and Cash Equivalents"&gt;9,993,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--CashAndCashEquivalentsAxis__us-gaap--USTreasurySecuritiesMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zcNeDpsmclh9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Marketable Securities"&gt;58,289,066&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;Subtotal&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zJhp1AxNUV75" style="border-bottom: Black 1.5pt solid; text-align: right" title="Adjusted Cost"&gt;67,892,825&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zA5tutCNr0f6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Allowance for Credit Losses"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0739"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zTYUN6xrBmx5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total Unrealized Gains / (Losses)"&gt;389,241&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--TradingSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_z8QGNiFtKry9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair Value"&gt;68,282,066&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zS67B0v91gdc" style="border-bottom: Black 1.5pt solid; text-align: right" title="Cash and Cash Equivalents"&gt;9,993,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--MarketableSecurities_iI_c20221231__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zhBjznmJ0Qk1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Marketable Securities"&gt;58,289,066&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 10pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--TradingSecuritiesDebtAmortizedCost_iI_c20221231_zdDQuO0jFhJ2" style="border-bottom: Black 2.5pt double; text-align: right" title="Adjusted Cost"&gt;80,873,628&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--FinancingReceivableAllowanceForCreditLosses_iI_c20221231_zyQR38uUUdp8" style="border-bottom: Black 2.5pt double; text-align: right" title="Allowance for Credit Losses"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0751"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--MarketableSecuritiesUnrealizedGainLoss_c20220101__20221231_zGj6bL8pSmQ6" style="border-bottom: Black 2.5pt double; text-align: right" title="Total Unrealized Gains / (Losses)"&gt;389,241&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--TradingSecurities_iI_c20221231_zJOqkFxoHU8h" style="border-bottom: Black 2.5pt double; text-align: right" title="Fair Value"&gt;81,262,869&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--CashAndCashEquivalentsAtCarryingValue_iI_c20221231_ziAmHZwZNT3h" style="border-bottom: Black 2.5pt double; text-align: right" title="Cash and Cash Equivalents"&gt;22,973,803&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--MarketableSecurities_iI_c20221231_zSyktWhms3Zc" style="border-bottom: Black 2.5pt double; text-align: right" title="Marketable Securities"&gt;58,289,066&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock>
    <us-gaap:TradingSecuritiesDebtAmortizedCost
      contextRef="AsOf2022-12-31_us-gaap_CashMember"
      decimals="0"
      unitRef="USD">12834444</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:TradingSecurities
      contextRef="AsOf2022-12-31_us-gaap_CashMember"
      decimals="0"
      unitRef="USD">12834444</us-gaap:TradingSecurities>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="AsOf2022-12-31_us-gaap_CashMember"
      decimals="0"
      unitRef="USD">12834444</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:TradingSecuritiesDebtAmortizedCost
      contextRef="AsOf2022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member"
      decimals="0"
      unitRef="USD">146359</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:TradingSecurities
      contextRef="AsOf2022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member"
      decimals="0"
      unitRef="USD">146359</us-gaap:TradingSecurities>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="AsOf2022-12-31_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueInputsLevel1Member"
      decimals="0"
      unitRef="USD">146359</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:TradingSecuritiesDebtAmortizedCost
      contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel1Member"
      decimals="0"
      unitRef="USD">146359</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:TradingSecurities
      contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel1Member"
      decimals="0"
      unitRef="USD">146359</us-gaap:TradingSecurities>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel1Member"
      decimals="0"
      unitRef="USD">146359</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:TradingSecuritiesDebtAmortizedCost
      contextRef="AsOf2022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">67892825</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:MarketableSecuritiesUnrealizedGainLoss
      contextRef="From2022-01-012022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">389241</us-gaap:MarketableSecuritiesUnrealizedGainLoss>
    <us-gaap:TradingSecurities
      contextRef="AsOf2022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">68282066</us-gaap:TradingSecurities>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="AsOf2022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">9993000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:MarketableSecurities
      contextRef="AsOf2022-12-31_us-gaap_USTreasurySecuritiesMember_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">58289066</us-gaap:MarketableSecurities>
    <us-gaap:TradingSecuritiesDebtAmortizedCost
      contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">67892825</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:MarketableSecuritiesUnrealizedGainLoss
      contextRef="From2022-01-012022-12-31_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">389241</us-gaap:MarketableSecuritiesUnrealizedGainLoss>
    <us-gaap:TradingSecurities
      contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">68282066</us-gaap:TradingSecurities>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">9993000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:MarketableSecurities
      contextRef="AsOf2022-12-31_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">58289066</us-gaap:MarketableSecurities>
    <us-gaap:TradingSecuritiesDebtAmortizedCost contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">80873628</us-gaap:TradingSecuritiesDebtAmortizedCost>
    <us-gaap:MarketableSecuritiesUnrealizedGainLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">389241</us-gaap:MarketableSecuritiesUnrealizedGainLoss>
    <us-gaap:TradingSecurities contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">81262869</us-gaap:TradingSecurities>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">22973803</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:MarketableSecurities contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">58289066</us-gaap:MarketableSecurities>
    <us-gaap:BusinessCombinationDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_80C_eus-gaap--BusinessCombinationDisclosureTextBlock_zvSlnTdkIrkb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
4 &#x2013; &lt;span id="xdx_82D_z2tyaouw8BIk"&gt;Business Combinations&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;On
December 31, 2021, the Company completed its acquisitions of Advanced Conceptions, Inc. (&#x201c;ACI&#x201d;) and Idaho Molecular, Inc. (&#x201c;IdMo&#x201d;), which were related
entities developing, with the Company, an at-home/point-of-care medical diagnostic device. Upon the completion of the acquisition,
all outstanding ACI and IdMo common stock was initially exchanged for approximately &lt;span id="xdx_901_ecustom--StockIssuedDuringPeriodSharesExchanged_pn5n6_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zQBiShfbBQ44" title="Number of shares exchanged"&gt;3.2&lt;/span&gt;
million shares of the Company&#x2019;s common stock and contingent consideration that includes up to approximately &lt;span id="xdx_90E_ecustom--StockIssuedDuringPeriodSharesContingentConsideration_pn5n6_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zPnhF0WvXfi8" title="Number of shares on contingent consideration"&gt;1.4&lt;/span&gt;
million shares and approximately &lt;span id="xdx_906_eus-gaap--ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z17Sh1OpxpR9" title="Warrants to purchase shares of common stock"&gt;456,000&lt;/span&gt;
warrants to purchase shares of the Company&#x2019;s common stock. The contingent consideration is based on the achievement of certain
milestones, which include regulatory approval for identified products, as well as production and net revenue targets. Upon the
completion of the acquisition, both ACI and IdMo became &lt;span id="xdx_909_eus-gaap--EquityMethodInvestmentOwnershipPercentage_iI_pid_dp_uPure_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember__srt--ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis__custom--ACIAndIDMOMember_zgxagB5DXadk" title="Equity method investment ownership percentage"&gt;100&lt;/span&gt;%
wholly-owned subsidiaries of the Company.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
fair value of assets acquired and liabilities assumed was based on a preliminary valuation, with estimates and assumptions subject to
change within the measurement period. During 2022, the Company finalized negotiations that were ongoing as of December 31, 2021 with
one remaining shareholder of ACI, which resulted in an increase to the purchase consideration of $&lt;span id="xdx_900_eus-gaap--BusinessCombinationConsiderationTransferred1_c20220101__20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zC4Sdzwgjm08" title="Purchase consideration"&gt;580,135&lt;/span&gt;. Additionally, there was an
increase of $&lt;span id="xdx_902_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iI_c20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zTtIceZTeuO3" title="Estimated tax liabilities"&gt;101,593&lt;/span&gt; in the estimated tax liabilities that resulted from the acquisition. Due to the change in purchase consideration
and estimated tax liabilities, a measurement period adjustment was recorded, resulting in an increase to goodwill of $&lt;span id="xdx_90A_eus-gaap--GoodwillPeriodIncreaseDecrease_c20220101__20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zOemQnDwFDfd" title="Increase of goodwill"&gt;681,728&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Following
the resolution with the remaining shareholder, the total number of shares exchanged as purchase consideration was approximately &lt;span id="xdx_90A_ecustom--StockIssuedDuringPeriodSharesExchanged_pn5n6_c20220101__20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zrP9tH0BBAE8" title="Number of shares exchanged"&gt;3.3&lt;/span&gt; million
shares. Additionally, the updated purchase consideration includes contingent consideration of up to approximately &lt;span id="xdx_901_ecustom--StockIssuedDuringPeriodSharesContingentConsideration_pn5n6_c20220101__20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zZE01ABY3hkd" title="Number of shares on contingent consideration"&gt;1.4&lt;/span&gt; million shares
and &lt;span id="xdx_903_eus-gaap--ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_iI_c20221231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z9JaUPz09Kh8" title="Warrants to purchase shares of common stock"&gt;465,000&lt;/span&gt; warrants to purchase shares of the Company&#x2019;s common stock.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
addition, the adjustments to the provisional purchase consideration amount resulted in an increase in the gain on remeasurement of acquisition
contingencies of $&lt;span id="xdx_909_ecustom--RemeasurementOfAcquisitionContingencies_iI_c20221231_z02kcJu2QvUj" title="Remeasurement of acquisition contingencies"&gt;78,617&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_896_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_zoB9dOcK5MMe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
total purchase consideration, including adjustment during the measurement period, was allocated to the assets acquired and liabilities
assumed as set forth below:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BC_zBpWnSsXO9jb" style="display: none"&gt;Schedule
of Assets and Liabilities assumed&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amounts Recognized as of Acquisition Date (as previously reported)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Measurement Period Adjustments&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amounts Recognized as of Acquisition Date (as adjusted)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Purchase Consideration&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 52%; text-indent: 10pt; padding-left: 0pt"&gt;Fair value of common shares issued&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z5aMwDkMYC6" style="width: 12%; text-align: right" title="Fair value of common shares issued"&gt;25,160,223&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zl9jDNzremH7" style="width: 12%; text-align: right" title="Fair value of common shares issued"&gt;480,776&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zF4tr7SJ2ed7" style="width: 12%; text-align: right" title="Fair value of common shares issued"&gt;25,640,999&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Payable to shareholder&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zT9oWzJ6vvW" style="text-align: right" title="Payable to shareholders"&gt;100,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6NKrL9iJ6Xg" style="text-align: right" title="Payable to shareholders"&gt;(100,000&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zrcLvDmkTEDa" style="text-align: right" title="Payable to shareholders"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0797"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-indent: 10pt; padding-left: 0pt"&gt;Fair value of contingent shares&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqHlBE2TeBfe" style="text-align: right" title="Fair value of contingent shares"&gt;8,684,669&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zAiB51WFkRLf" style="text-align: right" title="Fair value of contingent shares"&gt;165,957&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zgASPTa2c2I5" style="text-align: right" title="Fair value of contingent shares"&gt;8,850,626&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Fair value of contingent warrants&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zHFgoUGsbtY5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair value of contingent warrants"&gt;1,747,972&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zk8EBzLNRS7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair value of contingent warrants"&gt;33,402&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zLntKmJTHlXh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair value of contingent warrants"&gt;1,781,374&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Total fair value of consideration transferred&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zq8Y7EoXGfIb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Business combination, consideration transferred"&gt;35,692,864&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6eqjpfNBNb2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Business combination, consideration transferred"&gt;580,135&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zJa2SITxTzAe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Business combination, consideration transferred"&gt;36,272,999&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 0pt"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Identifiable assets acquired and liabilities assumed&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-indent: 10pt; padding-left: 0pt"&gt;Cash&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zjqRs8TqBtNa" style="text-align: right" title="Cash"&gt;1,196,243&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zwIqiNOHJVDf" style="text-align: right" title="Cash"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0819"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zoCQ5SU7Dca6" style="text-align: right" title="Cash"&gt;1,196,243&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Accounts receivable&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zR1VEVyGOPQl" style="text-align: right" title="Accounts receivables"&gt;31,170&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zJzcHUlxhYik" style="text-align: right" title="Accounts receivables"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0825"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zIyX5wCb1wK6" style="text-align: right" title="Accounts receivables"&gt;31,170&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Prepaid expenses and other current assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zbaAiONKMTk3" style="text-align: right" title="Prepaid expenses and other current assets"&gt;70,321&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zGfN5UU06tW9" style="text-align: right" title="Prepaid expenses and other current assets"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0831"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zYYUDSSoZoSc" style="text-align: right" title="Prepaid expenses and other current assets"&gt;70,321&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Property and equipment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z4VdkvdGtR49" style="text-align: right" title="Property and equipments"&gt;408,173&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqeLJoDbpC43" style="text-align: right" title="Property and equipments"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0837"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6jBfUlvuqr8" style="text-align: right" title="Property and equipments"&gt;408,173&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Technology - In-process research and development&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_ze5XozRn7Pze" style="text-align: right" title="Research and development in process"&gt;26,101,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6qo5o6x4Dca" style="text-align: right" title="Research and development in process"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0843"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zKR8Tm5vwSL9" style="text-align: right" title="Research and development in process"&gt;26,101,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Non-competition agreements&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zVAunUFtzO74" style="text-align: right" title="Non competition agreements"&gt;1,094,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zYZHR6yPvnt1" style="text-align: right" title="Non competition agreements"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0849"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zLZkkiBfP5V9" style="text-align: right" title="Non competition agreements"&gt;1,094,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Accounts payable and accrued other expenses&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zWQgWB38BlBl" style="text-align: right" title="Accounts payable and accrued other expenses"&gt;(1,069,274&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zFP1kpZVmam" style="text-align: right" title="Accounts payable and accrued other expenses"&gt;(101,593&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zopN2Jh5ioA6" style="text-align: right" title="Accounts payable and accrued other expenses"&gt;(1,170,867&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Deferred tax liability&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zcmrW1yJz8xj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax liability"&gt;(6,845,587&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zCbpuxXwzNFj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax liability"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0861"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zc7D9xtVa4eb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax liability"&gt;(6,845,587&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Total identifiable net assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zzUvKq4IhyJi" style="text-align: right" title="Total indentifiable net assets"&gt;20,986,046&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z1iMxZtU3ESh" style="text-align: right" title="Total indentifiable net assets"&gt;(101,593&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zMW8BD18K1Q1" style="text-align: right" title="Total indentifiable net assets"&gt;20,884,453&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 0pt"&gt;Goodwill&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--Goodwill_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zrRHWc5ZnMUh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill"&gt;14,706,818&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--Goodwill_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zNdDz62Tu8r8" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill"&gt;681,728&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--Goodwill_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zboMmRD6wpW6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill"&gt;15,388,546&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 0pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zGT0kqlJ9Zb6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;35,692,864&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zR9m7fgGdva8" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;580,135&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqTzeTfYzus9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;36,272,999&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A9_zzmiRTSI2Z0l" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
in-process research and development is considered an indefinite-lived intangible until the completion or abandonment of the research
and development activities. The non-competition agreements are being amortized over a range of &lt;span id="xdx_905_eus-gaap--FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_dtY_c20220101__20221231__srt--RangeAxis__srt--MinimumMember_z9bPMhKDR54" title="Finite lived intangible assets  remaining amortization period"&gt;1.5&lt;/span&gt; to &lt;span id="xdx_90F_eus-gaap--FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1_dtY_c20220101__20221231__srt--RangeAxis__srt--MaximumMember_zqxOLWsjvGRa" title="Finite lived intangible assets  remaining amortization period"&gt;3&lt;/span&gt; years.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:BusinessCombinationDisclosureTextBlock>
    <CODX:StockIssuedDuringPeriodSharesExchanged
      contextRef="From2021-12-302021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="-5"
      unitRef="Shares">3200000</CODX:StockIssuedDuringPeriodSharesExchanged>
    <CODX:StockIssuedDuringPeriodSharesContingentConsideration
      contextRef="From2021-12-302021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="-5"
      unitRef="Shares">1400000</CODX:StockIssuedDuringPeriodSharesContingentConsideration>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="INF"
      unitRef="Shares">456000</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember_custom_ACIAndIDMOMember"
      decimals="INF"
      unitRef="Pure">1</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="From2022-01-012022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">580135</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="AsOf2022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">101593</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:GoodwillPeriodIncreaseDecrease
      contextRef="From2022-01-012022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">681728</us-gaap:GoodwillPeriodIncreaseDecrease>
    <CODX:StockIssuedDuringPeriodSharesExchanged
      contextRef="From2022-01-012022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="-5"
      unitRef="Shares">3300000</CODX:StockIssuedDuringPeriodSharesExchanged>
    <CODX:StockIssuedDuringPeriodSharesContingentConsideration
      contextRef="From2022-01-012022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="-5"
      unitRef="Shares">1400000</CODX:StockIssuedDuringPeriodSharesContingentConsideration>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="AsOf2022-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="INF"
      unitRef="Shares">465000</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <CODX:RemeasurementOfAcquisitionContingencies contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">78617</CODX:RemeasurementOfAcquisitionContingencies>
    <us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_896_eus-gaap--ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock_zoB9dOcK5MMe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
total purchase consideration, including adjustment during the measurement period, was allocated to the assets acquired and liabilities
assumed as set forth below:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BC_zBpWnSsXO9jb" style="display: none"&gt;Schedule
of Assets and Liabilities assumed&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amounts Recognized as of Acquisition Date (as previously reported)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Measurement Period Adjustments&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amounts Recognized as of Acquisition Date (as adjusted)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Purchase Consideration&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 52%; text-indent: 10pt; padding-left: 0pt"&gt;Fair value of common shares issued&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z5aMwDkMYC6" style="width: 12%; text-align: right" title="Fair value of common shares issued"&gt;25,160,223&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zl9jDNzremH7" style="width: 12%; text-align: right" title="Fair value of common shares issued"&gt;480,776&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--StockIssuedDuringPeriodValueAcquisitions_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zF4tr7SJ2ed7" style="width: 12%; text-align: right" title="Fair value of common shares issued"&gt;25,640,999&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Payable to shareholder&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zT9oWzJ6vvW" style="text-align: right" title="Payable to shareholders"&gt;100,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6NKrL9iJ6Xg" style="text-align: right" title="Payable to shareholders"&gt;(100,000&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_ecustom--PaymentsToShareHoldersValueAcquisitions_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zrcLvDmkTEDa" style="text-align: right" title="Payable to shareholders"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0797"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-indent: 10pt; padding-left: 0pt"&gt;Fair value of contingent shares&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqHlBE2TeBfe" style="text-align: right" title="Fair value of contingent shares"&gt;8,684,669&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zAiB51WFkRLf" style="text-align: right" title="Fair value of contingent shares"&gt;165,957&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ContingentConsiderationClassifiedAsEquityFairValueDisclosure_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zgASPTa2c2I5" style="text-align: right" title="Fair value of contingent shares"&gt;8,850,626&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Fair value of contingent warrants&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zHFgoUGsbtY5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair value of contingent warrants"&gt;1,747,972&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zk8EBzLNRS7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair value of contingent warrants"&gt;33,402&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--WarrantsNotSettleableInCashFairValueDisclosure_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zLntKmJTHlXh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Fair value of contingent warrants"&gt;1,781,374&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Total fair value of consideration transferred&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zq8Y7EoXGfIb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Business combination, consideration transferred"&gt;35,692,864&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6eqjpfNBNb2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Business combination, consideration transferred"&gt;580,135&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--BusinessCombinationConsiderationTransferred1_c20211230__20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zJa2SITxTzAe" style="border-bottom: Black 1.5pt solid; text-align: right" title="Business combination, consideration transferred"&gt;36,272,999&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 0pt"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Identifiable assets acquired and liabilities assumed&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-indent: 10pt; padding-left: 0pt"&gt;Cash&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zjqRs8TqBtNa" style="text-align: right" title="Cash"&gt;1,196,243&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zwIqiNOHJVDf" style="text-align: right" title="Cash"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0819"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zoCQ5SU7Dca6" style="text-align: right" title="Cash"&gt;1,196,243&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Accounts receivable&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zR1VEVyGOPQl" style="text-align: right" title="Accounts receivables"&gt;31,170&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zJzcHUlxhYik" style="text-align: right" title="Accounts receivables"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0825"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zIyX5wCb1wK6" style="text-align: right" title="Accounts receivables"&gt;31,170&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Prepaid expenses and other current assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zbaAiONKMTk3" style="text-align: right" title="Prepaid expenses and other current assets"&gt;70,321&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zGfN5UU06tW9" style="text-align: right" title="Prepaid expenses and other current assets"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0831"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zYYUDSSoZoSc" style="text-align: right" title="Prepaid expenses and other current assets"&gt;70,321&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Property and equipment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z4VdkvdGtR49" style="text-align: right" title="Property and equipments"&gt;408,173&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqeLJoDbpC43" style="text-align: right" title="Property and equipments"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0837"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6jBfUlvuqr8" style="text-align: right" title="Property and equipments"&gt;408,173&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Technology - In-process research and development&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_ze5XozRn7Pze" style="text-align: right" title="Research and development in process"&gt;26,101,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z6qo5o6x4Dca" style="text-align: right" title="Research and development in process"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0843"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zKR8Tm5vwSL9" style="text-align: right" title="Research and development in process"&gt;26,101,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Non-competition agreements&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zVAunUFtzO74" style="text-align: right" title="Non competition agreements"&gt;1,094,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zYZHR6yPvnt1" style="text-align: right" title="Non competition agreements"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0849"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zLZkkiBfP5V9" style="text-align: right" title="Non competition agreements"&gt;1,094,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Accounts payable and accrued other expenses&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zWQgWB38BlBl" style="text-align: right" title="Accounts payable and accrued other expenses"&gt;(1,069,274&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zFP1kpZVmam" style="text-align: right" title="Accounts payable and accrued other expenses"&gt;(101,593&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_iNI_di_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zopN2Jh5ioA6" style="text-align: right" title="Accounts payable and accrued other expenses"&gt;(1,170,867&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Deferred tax liability&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zcmrW1yJz8xj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax liability"&gt;(6,845,587&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zCbpuxXwzNFj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax liability"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0861"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_iNI_di_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zc7D9xtVa4eb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Deferred tax liability"&gt;(6,845,587&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Total identifiable net assets&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zzUvKq4IhyJi" style="text-align: right" title="Total indentifiable net assets"&gt;20,986,046&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_z1iMxZtU3ESh" style="text-align: right" title="Total indentifiable net assets"&gt;(101,593&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zMW8BD18K1Q1" style="text-align: right" title="Total indentifiable net assets"&gt;20,884,453&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 0pt"&gt;Goodwill&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--Goodwill_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zrRHWc5ZnMUh" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill"&gt;14,706,818&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--Goodwill_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zNdDz62Tu8r8" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill"&gt;681,728&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--Goodwill_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zboMmRD6wpW6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill"&gt;15,388,546&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 0pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--ScenarioPreviouslyReportedMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zGT0kqlJ9Zb6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;35,692,864&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__srt--RestatementAxis__srt--RestatementAdjustmentMember__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zR9m7fgGdva8" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;580,135&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_iI_c20211231__us-gaap--BusinessAcquisitionAxis__custom--AdvancedConceptionsIncAndIdahoMolecularIncMember_zqTzeTfYzus9" style="border-bottom: Black 1.5pt solid; text-align: right" title="Total"&gt;36,272,999&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2021-12-302021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">25160223</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2021-12-302021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">480776</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="From2021-12-302021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">25640999</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <CODX:PaymentsToShareHoldersValueAcquisitions
      contextRef="From2021-12-302021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">100000</CODX:PaymentsToShareHoldersValueAcquisitions>
    <CODX:PaymentsToShareHoldersValueAcquisitions
      contextRef="From2021-12-302021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">-100000</CODX:PaymentsToShareHoldersValueAcquisitions>
    <us-gaap:ContingentConsiderationClassifiedAsEquityFairValueDisclosure
      contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">8684669</us-gaap:ContingentConsiderationClassifiedAsEquityFairValueDisclosure>
    <us-gaap:ContingentConsiderationClassifiedAsEquityFairValueDisclosure
      contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">165957</us-gaap:ContingentConsiderationClassifiedAsEquityFairValueDisclosure>
    <us-gaap:ContingentConsiderationClassifiedAsEquityFairValueDisclosure
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">8850626</us-gaap:ContingentConsiderationClassifiedAsEquityFairValueDisclosure>
    <us-gaap:WarrantsNotSettleableInCashFairValueDisclosure
      contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">1747972</us-gaap:WarrantsNotSettleableInCashFairValueDisclosure>
    <us-gaap:WarrantsNotSettleableInCashFairValueDisclosure
      contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">33402</us-gaap:WarrantsNotSettleableInCashFairValueDisclosure>
    <us-gaap:WarrantsNotSettleableInCashFairValueDisclosure
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">1781374</us-gaap:WarrantsNotSettleableInCashFairValueDisclosure>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="From2021-12-302021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">35692864</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="From2021-12-302021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">580135</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="From2021-12-302021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">36272999</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">1196243</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">1196243</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">31170</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">31170</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">70321</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">70321</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">408173</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">408173</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities
      contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">26101000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">26101000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities>
    <CODX:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements
      contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">1094000</CODX:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements>
    <CODX:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">1094000</CODX:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities
      contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">1069274</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities
      contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">101593</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">1170867</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">6845587</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">6845587</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet
      contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">20986046</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet
      contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">-101593</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">20884453</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet>
    <us-gaap:Goodwill
      contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">14706818</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">681728</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">15388546</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="AsOf2021-12-31_srt_ScenarioPreviouslyReportedMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">35692864</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="AsOf2021-12-31_srt_RestatementAdjustmentMember_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">580135</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="AsOf2021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember"
      decimals="0"
      unitRef="USD">36272999</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1 contextRef="From2022-01-012022-12-31_srt_MinimumMember">P1Y6M</us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1>
    <us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1 contextRef="From2022-01-012022-12-31_srt_MaximumMember">P3Y</us-gaap:FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1>
    <us-gaap:FairValueDisclosuresTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_805_eus-gaap--FairValueDisclosuresTextBlock_z1MIZ3VUEmR7" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
5 &#x2013; &lt;span id="xdx_82B_zdSaUArUCdde"&gt;Fair Value Measurements&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company measures and records certain financial assets and liabilities at fair value on a recurring basis. Fair value is based on the
price that would be received from selling an asset or paid to transfer a liability in an orderly transaction between market participants
at the measurement date.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following three levels of inputs are used to measure the fair value of financial assets and liabilities:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Level
1: Quoted market prices in active markets for identical assets or liabilities.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Level
2: Observable market-based inputs or unobservable inputs that are corroborated by market data.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Level
3: Unobservable inputs that are not corroborated by market data.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89D_eus-gaap--FairValueAssetsMeasuredOnRecurringBasisTextBlock_zNmBIn0gxFR5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table summarizes the assets and liabilities measured at fair value on a recurring basis as of December 31, 2022 and December
31, 2021, by level within the fair value hierarchy:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BE_zHl7PXx6c4Q9" style="display: none"&gt;Schedule of Fair Value Assets and Liabilities&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49E_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_za35LZtp3k6f" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 1)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zZzHIAE0QYXe" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 2)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_491_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel3Member_zqm58cXIqJHj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 3)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49F_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember_zQ1lL7V2gdYj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="14" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 1)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 2)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 3)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 0pt"&gt;Assets:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--CashAndCashEquivalentsFairValueDisclosure_iI_zbyRrbAqafw" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 44%; text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Cash equivalents&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;&#160;&#160;&#160;&lt;span style="-sec-ix-hidden: xdx2ixbrl0891"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;10,179,667&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0893"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;10,179,667&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--MarketableSecurities_iI_pp0p0_zzVO4M4LdAeb" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; text-indent: 0pt; padding-left: 10pt"&gt;Marketable securities (U.S. treasury bills and notes)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0896"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;58,289,066&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0898"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;58,289,066&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--AssetsFairValueDisclosure_iI_pp0p0_zUWfYQWephfb" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt"&gt;Total assets measured at fair value&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0901"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;68,468,733&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0903"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;68,468,733&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 0pt"&gt;Liabilities:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_ecustom--FairValueOfContingentConsiderationToCommonStock_iI_pp0p0_za3kJmZITjvf" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Contingent consideration - common stock&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0906"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0907"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;2,499,147&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;2,499,147&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_ecustom--FairValueOfContingentConsiderationToWarrants_iI_pp0p0_z7AG7cBfWd0e" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Contingent consideration - warrants&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0911"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0912"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;233,209&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;233,209&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--LiabilitiesFairValueDisclosure_iI_pp0p0_zaWsVHrCUdW6" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt"&gt;Total liabilities measured at fair value&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0916"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0917"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,732,356&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,732,356&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49F_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z85NmgSrPMEe" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 1)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zOzl9z5G0Llj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 2)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel3Member_zdaj3V3Afke1" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 3)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49F_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember_zhrYTVGZIXgj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="14" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 1)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 2)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 3)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Assets:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--MarketableSecurities_iI_pp0p0_zFMgCxKeNT1i" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 44%; text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Marketable securities (certificates of deposit)&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right"&gt;&#160;&#160;&#160;&lt;span style="-sec-ix-hidden: xdx2ixbrl0921"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right"&gt;1,255,266&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0923"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right"&gt;1,255,266&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--AssetsFairValueDisclosure_iI_pp0p0_z7tnOpuiG6s4" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total assets measured at fair value&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0926"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;1,255,266&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0928"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;1,255,266&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Liabilities:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_ecustom--FairValueOfContingentConsiderationToCommonStock_iI_pp0p0_z8Qq2Av8CJc6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Contingent consideration - common stock&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0931"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0932"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;8,684,669&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;8,684,669&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_ecustom--FairValueOfContingentConsiderationToWarrants_iI_pp0p0_z1AwCSUhJ3x" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Contingent consideration - warrants&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0936"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0937"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,747,972&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,747,972&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--LiabilitiesFairValueDisclosure_iI_pp0p0_zeXUXPL2mrF" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total liabilities measured at fair value&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0941"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0942"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;10,432,641&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;10,432,641&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AC_zzW0iUPDTim8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company&#x2019;s financial instruments that are measured at fair value on a recurring basis consist of certificates of deposit and U.S.
treasury bills and notes as of December 31, 2021 and 2022, respectively.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
connection with the acquisitions of IdMo and ACI on December 31, 2021, the Company recorded a liability for contingent consideration
in the form of shares of common stock and warrants to purchase common stock. The fair value of contingent consideration is calculated
using a discounted probability weighted valuation model. Discount rates used in such calculations are a significant assumption that are
not observed in the market, and therefore, the resulting fair value represents a Level 3 measurement.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89F_eus-gaap--FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_z5taQBMfavhc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
changes for Level 3 items measured at fair value on a recurring basis are as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BF_zDAxofxhNmji" style="display: none"&gt;Schedule of Changes in Fair Value Measurement&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 0pt"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_49F_20220101__20221231_znsNOgdNLwad" style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--BusinessCombinationContingentConsiderationLiabilityNoncurrent_iS_pp0p0_zkKvjc5i4wz1" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%; padding-left: 0pt"&gt;Fair value as of December 31, 2021&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;10,432,641&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_ecustom--ContingentConsideredIssuedForMeasurementPeriodAdjustments_z247waNkq5Jg" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Change in contingent purchase consideration for measurement period adjustments&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;199,359&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_ecustom--ContingentConsideredIssuedForBusinessAcquisitions_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Change in fair value of contingent consideration issued for business acquisitions&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(7,899,644&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--BusinessCombinationContingentConsiderationLiabilityNoncurrent_iE_zfFo3ktUKHt6" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 0pt"&gt;Fair value as of December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,732,356&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AD_zodLvhN4guXj" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
fair value of the contingent consideration is based on the fair value of the contingent consideration-common stock and contingent consideration-warrants.
The fair value of the contingent consideration-common stock is equal to the probability-adjusted value of the Company&#x2019;s common
stock as of the valuation date. The fair value of the contingent consideration-warrants is equal to the probability adjusted value of
a call option with terms consistent with the terms of the warrants as of the valuation date. Prior to the probability adjustments, the
warrants were valued based on the following inputs:&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_897_eus-gaap--FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock_zZHSiyyF7nba" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B4_zw5C8B39DwU2" style="display: none"&gt;Schedule of Contingent Consideration Common Stock and Warrants&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 56%; text-indent: 10pt; padding-left: 0pt"&gt;Stock price&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zVVJRU7AwPsf" style="width: 18%; text-align: right" title="Warrants measurement input"&gt;2.52&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_z7vqzQeVIZG" style="width: 18%; text-align: right" title="Warrants measurement input"&gt;8.93&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-indent: 10pt; padding-left: 0pt"&gt;Strike price&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputStrikePriceMember_zfmlUrenCJN4" style="text-align: right" title="Warrants measurement input"&gt;9.13&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputStrikePriceMember_zGt6eTgMthgf" style="text-align: right" title="Warrants measurement input"&gt;9.13&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-indent: 10pt; padding-left: 0pt"&gt;Volatility&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right" title="Warrants measurement input"&gt;&lt;span id="xdx_903_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputPriceVolatilityMember_zIyI4ZXfye5a" title="Warrants measurement input"&gt;75.00&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right" title="Warrants measurement input"&gt;&lt;span id="xdx_90A_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputPriceVolatilityMember_z8EbF6amFt7" title="Warrants measurement input"&gt;80.00&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Risk-free rate&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right" title="Warrants measurement input"&gt;&lt;span id="xdx_906_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zCGVh05kNBZ8" title="Warrants measurement input"&gt;4.10&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right" title="Warrants measurement input"&gt;&lt;span id="xdx_90C_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zUlOw4xorjy8" title="Warrants measurement input"&gt;1.30&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Expected term&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right" title="Warrants measurement input"&gt;&lt;span id="xdx_90E_eus-gaap--WarrantsAndRightsOutstandingTerm_iI_dtY_c20221231_zdHebkjF1P7k" title="Expected term"&gt;4.0&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right" title="Warrants measurement input"&gt;&lt;span id="xdx_906_eus-gaap--WarrantsAndRightsOutstandingTerm_iI_dtY_c20211231_zAvxvuojf4r4" title="Expected term"&gt;5.0&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
order to calculate the probability-adjusted value of the contingent consideration-common stock and contingent
consideration-warrants, the Company estimated the probability as of the valuation date of achieving certain milestones, which
include regulatory approval for identified products, as well as production and net revenue targets. The probability of achieving the
milestone related to net revenues was estimated as of the acquisition date using a Monte Carlo simulation valuation model.
Significant inputs other than the fair value assumptions noted above were consistent as of the valuation date. The unobservable
significant inputs to the valuation model were as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;&lt;b&gt;December 31, 2022&lt;/b&gt;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt; width: 60%"&gt;Stock price&lt;/td&gt;
    &lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%"&gt;$&lt;/td&gt;
    &lt;td id="xdx_98E_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zlQ87Dl6Vyla" style="text-align: right; width: 16%" title="Business combination,contingent consideration"&gt;2.52&lt;/td&gt;
    &lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zoWfN4LNLVik" style="width: 16%; text-align: right" title="Business combination,contingent consideration"&gt;8.93&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt; text-align: left"&gt;Risk-free rate&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td id="xdx_986_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_z4yZAY1oryd5" style="text-align: right" title="Business combination,contingent consideration"&gt;4.10&lt;/td&gt;
    &lt;td&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zqs5FoMKZmm4" style="text-align: right" title="Business combination,contingent consideration"&gt;1.30&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt; text-align: left"&gt;Expected term&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td id="xdx_988_ecustom--BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_dtY_c20220101__20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputExpectedTermMember_zV03xOskg673" style="text-align: right" title="Business combination,contingent consideration"&gt;4.0&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_dtY_c20210101__20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputExpectedTermMember_zMyG6tQ5glZ9" style="text-align: right" title="Business combination,contingent consideration"&gt;5.0&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt; text-align: left"&gt;Weighted-average cost of capital&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td id="xdx_98C_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputCostOfCapitalMember_zign2TiBfOpj" style="text-align: right" title="Business combination,contingent consideration"&gt;27.00&lt;/td&gt;
    &lt;td&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputCostOfCapitalMember_zsPtNGISMoW9" style="text-align: right" title="Business combination,contingent consideration"&gt;27.00&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt; text-align: left"&gt;Revenue discount rate&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td id="xdx_982_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputDiscountRateMember_zj7XSoiFH0le" style="text-align: right" title="Business combination,contingent consideration"&gt;9.50&lt;/td&gt;
    &lt;td&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputDiscountRateMember_z0asoFeyAfBk" style="text-align: right" title="Business combination,contingent consideration"&gt;9.50&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt; text-align: left"&gt;Equity volatility&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td id="xdx_98D_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputEquityVolatilityMember_zrH4SwDUpeC1" style="text-align: right" title="Business combination,contingent consideration"&gt;75.00&lt;/td&gt;
    &lt;td&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputEquityVolatilityMember_zsAOTJizpiud" style="text-align: right" title="Business combination,contingent consideration"&gt;80.00&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt; text-align: left"&gt;Asset volatility&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td id="xdx_98C_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputAssetVolatilityMember_zlss7vR74gW3" style="text-align: right" title="Business combination,contingent consideration"&gt;80.00&lt;/td&gt;
    &lt;td&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputAssetVolatilityMember_zinRGtpOSIJ5" style="text-align: right" title="Business combination,contingent consideration"&gt;80.00&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt; text-align: left"&gt;Revenue volatility&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td id="xdx_984_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputRevenueVolatilityMember_z6SxEvgIuM8f" style="text-align: right" title="Business combination,contingent consideration"&gt;30.00&lt;/td&gt;
    &lt;td&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputRevenueVolatilityMember_zD07wLrSxP54" style="text-align: right" title="Business combination,contingent consideration"&gt;30.00&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A3_zIXG8v5onFl8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Fair
Value of Other Financial Instruments&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.25in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
carrying amounts of certain financial instruments, including cash held in banks, accounts receivable, notes receivable, accounts payable,
accrued liabilities, and other liabilities approximate fair value due to their short-term maturities and are excluded from the fair value
tables above.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_89D_eus-gaap--FairValueAssetsMeasuredOnRecurringBasisTextBlock_zNmBIn0gxFR5" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table summarizes the assets and liabilities measured at fair value on a recurring basis as of December 31, 2022 and December
31, 2021, by level within the fair value hierarchy:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BE_zHl7PXx6c4Q9" style="display: none"&gt;Schedule of Fair Value Assets and Liabilities&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49E_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_za35LZtp3k6f" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 1)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zZzHIAE0QYXe" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 2)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_491_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel3Member_zqm58cXIqJHj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 3)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49F_20221231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember_zQ1lL7V2gdYj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="14" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 1)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 2)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 3)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 0pt"&gt;Assets:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--CashAndCashEquivalentsFairValueDisclosure_iI_zbyRrbAqafw" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 44%; text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Cash equivalents&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;&#160;&#160;&#160;&lt;span style="-sec-ix-hidden: xdx2ixbrl0891"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;10,179,667&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0893"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;10,179,667&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--MarketableSecurities_iI_pp0p0_zzVO4M4LdAeb" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; text-indent: 0pt; padding-left: 10pt"&gt;Marketable securities (U.S. treasury bills and notes)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0896"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;58,289,066&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0898"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;58,289,066&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--AssetsFairValueDisclosure_iI_pp0p0_zUWfYQWephfb" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt"&gt;Total assets measured at fair value&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0901"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;68,468,733&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0903"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;68,468,733&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 0pt"&gt;Liabilities:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_ecustom--FairValueOfContingentConsiderationToCommonStock_iI_pp0p0_za3kJmZITjvf" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Contingent consideration - common stock&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0906"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0907"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;2,499,147&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;2,499,147&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_ecustom--FairValueOfContingentConsiderationToWarrants_iI_pp0p0_z7AG7cBfWd0e" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Contingent consideration - warrants&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0911"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0912"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;233,209&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;233,209&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--LiabilitiesFairValueDisclosure_iI_pp0p0_zaWsVHrCUdW6" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt"&gt;Total liabilities measured at fair value&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0916"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0917"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,732,356&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,732,356&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49F_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel1Member_z85NmgSrPMEe" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 1)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel2Member_zOzl9z5G0Llj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 2)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember__us-gaap--FairValueByFairValueHierarchyLevelAxis__us-gaap--FairValueInputsLevel3Member_zdaj3V3Afke1" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 3)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49F_20211231__us-gaap--FairValueByMeasurementFrequencyAxis__us-gaap--FairValueMeasurementsRecurringMember_zhrYTVGZIXgj" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="14" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 1)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 2)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(Level 3)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Assets:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--MarketableSecurities_iI_pp0p0_zFMgCxKeNT1i" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 44%; text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Marketable securities (certificates of deposit)&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right"&gt;&#160;&#160;&#160;&lt;span style="-sec-ix-hidden: xdx2ixbrl0921"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right"&gt;1,255,266&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0923"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; width: 10%; text-align: right"&gt;1,255,266&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--AssetsFairValueDisclosure_iI_pp0p0_z7tnOpuiG6s4" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total assets measured at fair value&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0926"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;1,255,266&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0928"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;1,255,266&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Liabilities:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_ecustom--FairValueOfContingentConsiderationToCommonStock_iI_pp0p0_z8Qq2Av8CJc6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Contingent consideration - common stock&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0931"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0932"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;8,684,669&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;8,684,669&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_ecustom--FairValueOfContingentConsiderationToWarrants_iI_pp0p0_z1AwCSUhJ3x" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;Contingent consideration - warrants&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0936"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0937"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,747,972&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,747,972&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--LiabilitiesFairValueDisclosure_iI_pp0p0_zeXUXPL2mrF" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total liabilities measured at fair value&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0941"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl0942"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;10,432,641&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;10,432,641&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">10179667</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="0"
      unitRef="USD">10179667</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:MarketableSecurities
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">58289066</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="0"
      unitRef="USD">58289066</us-gaap:MarketableSecurities>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">68468733</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="0"
      unitRef="USD">68468733</us-gaap:AssetsFairValueDisclosure>
    <CODX:FairValueOfContingentConsiderationToCommonStock
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member"
      decimals="0"
      unitRef="USD">2499147</CODX:FairValueOfContingentConsiderationToCommonStock>
    <CODX:FairValueOfContingentConsiderationToCommonStock
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="0"
      unitRef="USD">2499147</CODX:FairValueOfContingentConsiderationToCommonStock>
    <CODX:FairValueOfContingentConsiderationToWarrants
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member"
      decimals="0"
      unitRef="USD">233209</CODX:FairValueOfContingentConsiderationToWarrants>
    <CODX:FairValueOfContingentConsiderationToWarrants
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="0"
      unitRef="USD">233209</CODX:FairValueOfContingentConsiderationToWarrants>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member"
      decimals="0"
      unitRef="USD">2732356</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="0"
      unitRef="USD">2732356</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:MarketableSecurities
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">1255266</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="0"
      unitRef="USD">1255266</us-gaap:MarketableSecurities>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel2Member"
      decimals="0"
      unitRef="USD">1255266</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="0"
      unitRef="USD">1255266</us-gaap:AssetsFairValueDisclosure>
    <CODX:FairValueOfContingentConsiderationToCommonStock
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member"
      decimals="0"
      unitRef="USD">8684669</CODX:FairValueOfContingentConsiderationToCommonStock>
    <CODX:FairValueOfContingentConsiderationToCommonStock
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="0"
      unitRef="USD">8684669</CODX:FairValueOfContingentConsiderationToCommonStock>
    <CODX:FairValueOfContingentConsiderationToWarrants
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member"
      decimals="0"
      unitRef="USD">1747972</CODX:FairValueOfContingentConsiderationToWarrants>
    <CODX:FairValueOfContingentConsiderationToWarrants
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="0"
      unitRef="USD">1747972</CODX:FairValueOfContingentConsiderationToWarrants>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember_us-gaap_FairValueInputsLevel3Member"
      decimals="0"
      unitRef="USD">10432641</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="AsOf2021-12-31_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="0"
      unitRef="USD">10432641</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_89F_eus-gaap--FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_z5taQBMfavhc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
changes for Level 3 items measured at fair value on a recurring basis are as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BF_zDAxofxhNmji" style="display: none"&gt;Schedule of Changes in Fair Value Measurement&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 0pt"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_49F_20220101__20221231_znsNOgdNLwad" style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--BusinessCombinationContingentConsiderationLiabilityNoncurrent_iS_pp0p0_zkKvjc5i4wz1" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%; padding-left: 0pt"&gt;Fair value as of December 31, 2021&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;10,432,641&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_ecustom--ContingentConsideredIssuedForMeasurementPeriodAdjustments_z247waNkq5Jg" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Change in contingent purchase consideration for measurement period adjustments&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;199,359&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_ecustom--ContingentConsideredIssuedForBusinessAcquisitions_i_pp0p0" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Change in fair value of contingent consideration issued for business acquisitions&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(7,899,644&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--BusinessCombinationContingentConsiderationLiabilityNoncurrent_iE_zfFo3ktUKHt6" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 0pt"&gt;Fair value as of December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;2,732,356&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">10432641</us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent>
    <CODX:ContingentConsideredIssuedForMeasurementPeriodAdjustments
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">199359</CODX:ContingentConsideredIssuedForMeasurementPeriodAdjustments>
    <CODX:ContingentConsideredIssuedForBusinessAcquisitions
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-7899644</CODX:ContingentConsideredIssuedForBusinessAcquisitions>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">2732356</us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent>
    <us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_897_eus-gaap--FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock_zZHSiyyF7nba" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B4_zw5C8B39DwU2" style="display: none"&gt;Schedule of Contingent Consideration Common Stock and Warrants&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 56%; text-indent: 10pt; padding-left: 0pt"&gt;Stock price&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zVVJRU7AwPsf" style="width: 18%; text-align: right" title="Warrants measurement input"&gt;2.52&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_z7vqzQeVIZG" style="width: 18%; text-align: right" title="Warrants measurement input"&gt;8.93&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-indent: 10pt; padding-left: 0pt"&gt;Strike price&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputStrikePriceMember_zfmlUrenCJN4" style="text-align: right" title="Warrants measurement input"&gt;9.13&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputStrikePriceMember_zGt6eTgMthgf" style="text-align: right" title="Warrants measurement input"&gt;9.13&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-indent: 10pt; padding-left: 0pt"&gt;Volatility&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right" title="Warrants measurement input"&gt;&lt;span id="xdx_903_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputPriceVolatilityMember_zIyI4ZXfye5a" title="Warrants measurement input"&gt;75.00&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right" title="Warrants measurement input"&gt;&lt;span id="xdx_90A_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputPriceVolatilityMember_z8EbF6amFt7" title="Warrants measurement input"&gt;80.00&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Risk-free rate&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right" title="Warrants measurement input"&gt;&lt;span id="xdx_906_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zCGVh05kNBZ8" title="Warrants measurement input"&gt;4.10&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right" title="Warrants measurement input"&gt;&lt;span id="xdx_90C_eus-gaap--WarrantsAndRightsOutstandingMeasurementInput_iI_pid_dp_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zUlOw4xorjy8" title="Warrants measurement input"&gt;1.30&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Expected term&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right" title="Warrants measurement input"&gt;&lt;span id="xdx_90E_eus-gaap--WarrantsAndRightsOutstandingTerm_iI_dtY_c20221231_zdHebkjF1P7k" title="Expected term"&gt;4.0&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right" title="Warrants measurement input"&gt;&lt;span id="xdx_906_eus-gaap--WarrantsAndRightsOutstandingTerm_iI_dtY_c20211231_zAvxvuojf4r4" title="Expected term"&gt;5.0&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
order to calculate the probability-adjusted value of the contingent consideration-common stock and contingent
consideration-warrants, the Company estimated the probability as of the valuation date of achieving certain milestones, which
include regulatory approval for identified products, as well as production and net revenue targets. The probability of achieving the
milestone related to net revenues was estimated as of the acquisition date using a Monte Carlo simulation valuation model.
Significant inputs other than the fair value assumptions noted above were consistent as of the valuation date. The unobservable
significant inputs to the valuation model were as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"&gt;&lt;b&gt;December 31, 2022&lt;/b&gt;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt; width: 60%"&gt;Stock price&lt;/td&gt;
    &lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%"&gt;$&lt;/td&gt;
    &lt;td id="xdx_98E_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zlQ87Dl6Vyla" style="text-align: right; width: 16%" title="Business combination,contingent consideration"&gt;2.52&lt;/td&gt;
    &lt;td style="width: 1%"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputSharePriceMember_zoWfN4LNLVik" style="width: 16%; text-align: right" title="Business combination,contingent consideration"&gt;8.93&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt; text-align: left"&gt;Risk-free rate&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td id="xdx_986_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_z4yZAY1oryd5" style="text-align: right" title="Business combination,contingent consideration"&gt;4.10&lt;/td&gt;
    &lt;td&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputRiskFreeInterestRateMember_zqs5FoMKZmm4" style="text-align: right" title="Business combination,contingent consideration"&gt;1.30&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt; text-align: left"&gt;Expected term&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td id="xdx_988_ecustom--BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_dtY_c20220101__20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputExpectedTermMember_zV03xOskg673" style="text-align: right" title="Business combination,contingent consideration"&gt;4.0&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm_dtY_c20210101__20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputExpectedTermMember_zMyG6tQ5glZ9" style="text-align: right" title="Business combination,contingent consideration"&gt;5.0&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt; text-align: left"&gt;Weighted-average cost of capital&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td id="xdx_98C_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputCostOfCapitalMember_zign2TiBfOpj" style="text-align: right" title="Business combination,contingent consideration"&gt;27.00&lt;/td&gt;
    &lt;td&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputCostOfCapitalMember_zsPtNGISMoW9" style="text-align: right" title="Business combination,contingent consideration"&gt;27.00&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt; text-align: left"&gt;Revenue discount rate&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td id="xdx_982_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputDiscountRateMember_zj7XSoiFH0le" style="text-align: right" title="Business combination,contingent consideration"&gt;9.50&lt;/td&gt;
    &lt;td&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__us-gaap--MeasurementInputDiscountRateMember_z0asoFeyAfBk" style="text-align: right" title="Business combination,contingent consideration"&gt;9.50&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt; text-align: left"&gt;Equity volatility&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td id="xdx_98D_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputEquityVolatilityMember_zrH4SwDUpeC1" style="text-align: right" title="Business combination,contingent consideration"&gt;75.00&lt;/td&gt;
    &lt;td&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputEquityVolatilityMember_zsAOTJizpiud" style="text-align: right" title="Business combination,contingent consideration"&gt;80.00&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt; text-align: left"&gt;Asset volatility&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td id="xdx_98C_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputAssetVolatilityMember_zlss7vR74gW3" style="text-align: right" title="Business combination,contingent consideration"&gt;80.00&lt;/td&gt;
    &lt;td&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputAssetVolatilityMember_zinRGtpOSIJ5" style="text-align: right" title="Business combination,contingent consideration"&gt;80.00&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt; text-align: left"&gt;Revenue volatility&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td&gt;&#160;&lt;/td&gt;
    &lt;td id="xdx_984_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20221231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputRevenueVolatilityMember_z6SxEvgIuM8f" style="text-align: right" title="Business combination,contingent consideration"&gt;30.00&lt;/td&gt;
    &lt;td&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--BusinessCombinationContingentConsiderationLiabilityMeasurementInput_iI_uPure_c20211231__us-gaap--MeasurementInputTypeAxis__custom--MeasurementInputRevenueVolatilityMember_zD07wLrSxP54" style="text-align: right" title="Business combination,contingent consideration"&gt;30.00&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock>
    <us-gaap:WarrantsAndRightsOutstandingMeasurementInput
      contextRef="AsOf2022-12-31_us-gaap_MeasurementInputSharePriceMember"
      decimals="INF"
      unitRef="Pure">2.52</us-gaap:WarrantsAndRightsOutstandingMeasurementInput>
    <us-gaap:WarrantsAndRightsOutstandingMeasurementInput
      contextRef="AsOf2021-12-31_us-gaap_MeasurementInputSharePriceMember"
      decimals="INF"
      unitRef="Pure">8.93</us-gaap:WarrantsAndRightsOutstandingMeasurementInput>
    <us-gaap:WarrantsAndRightsOutstandingMeasurementInput
      contextRef="AsOf2022-12-31_custom_MeasurementInputStrikePriceMember"
      decimals="INF"
      unitRef="Pure">9.13</us-gaap:WarrantsAndRightsOutstandingMeasurementInput>
    <us-gaap:WarrantsAndRightsOutstandingMeasurementInput
      contextRef="AsOf2021-12-31_custom_MeasurementInputStrikePriceMember"
      decimals="INF"
      unitRef="Pure">9.13</us-gaap:WarrantsAndRightsOutstandingMeasurementInput>
    <us-gaap:WarrantsAndRightsOutstandingMeasurementInput
      contextRef="AsOf2022-12-31_us-gaap_MeasurementInputPriceVolatilityMember"
      decimals="INF"
      unitRef="Pure">0.7500</us-gaap:WarrantsAndRightsOutstandingMeasurementInput>
    <us-gaap:WarrantsAndRightsOutstandingMeasurementInput
      contextRef="AsOf2021-12-31_us-gaap_MeasurementInputPriceVolatilityMember"
      decimals="INF"
      unitRef="Pure">0.8000</us-gaap:WarrantsAndRightsOutstandingMeasurementInput>
    <us-gaap:WarrantsAndRightsOutstandingMeasurementInput
      contextRef="AsOf2022-12-31_us-gaap_MeasurementInputRiskFreeInterestRateMember"
      decimals="INF"
      unitRef="Pure">0.0410</us-gaap:WarrantsAndRightsOutstandingMeasurementInput>
    <us-gaap:WarrantsAndRightsOutstandingMeasurementInput
      contextRef="AsOf2021-12-31_us-gaap_MeasurementInputRiskFreeInterestRateMember"
      decimals="INF"
      unitRef="Pure">0.0130</us-gaap:WarrantsAndRightsOutstandingMeasurementInput>
    <us-gaap:WarrantsAndRightsOutstandingTerm contextRef="AsOf2022-12-31">P4Y</us-gaap:WarrantsAndRightsOutstandingTerm>
    <us-gaap:WarrantsAndRightsOutstandingTerm contextRef="AsOf2021-12-31">P5Y</us-gaap:WarrantsAndRightsOutstandingTerm>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput
      contextRef="AsOf2022-12-31_us-gaap_MeasurementInputSharePriceMember"
      decimals="INF"
      unitRef="Pure">2.52</us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput
      contextRef="AsOf2021-12-31_us-gaap_MeasurementInputSharePriceMember"
      decimals="INF"
      unitRef="Pure">8.93</us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput
      contextRef="AsOf2022-12-31_us-gaap_MeasurementInputRiskFreeInterestRateMember"
      decimals="INF"
      unitRef="Pure">4.10</us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput
      contextRef="AsOf2021-12-31_us-gaap_MeasurementInputRiskFreeInterestRateMember"
      decimals="INF"
      unitRef="Pure">1.30</us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput>
    <CODX:BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm contextRef="From2022-01-012022-12-31_us-gaap_MeasurementInputExpectedTermMember">P4Y</CODX:BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm>
    <CODX:BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm contextRef="From2021-01-012021-12-31_us-gaap_MeasurementInputExpectedTermMember">P5Y</CODX:BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput
      contextRef="AsOf2022-12-31_custom_MeasurementInputCostOfCapitalMember"
      decimals="INF"
      unitRef="Pure">27.00</us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput
      contextRef="AsOf2021-12-31_custom_MeasurementInputCostOfCapitalMember"
      decimals="INF"
      unitRef="Pure">27.00</us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput
      contextRef="AsOf2022-12-31_us-gaap_MeasurementInputDiscountRateMember"
      decimals="INF"
      unitRef="Pure">9.50</us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput
      contextRef="AsOf2021-12-31_us-gaap_MeasurementInputDiscountRateMember"
      decimals="INF"
      unitRef="Pure">9.50</us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput
      contextRef="AsOf2022-12-31_custom_MeasurementInputEquityVolatilityMember"
      decimals="INF"
      unitRef="Pure">75.00</us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput
      contextRef="AsOf2021-12-31_custom_MeasurementInputEquityVolatilityMember"
      decimals="INF"
      unitRef="Pure">80.00</us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput
      contextRef="AsOf2022-12-31_custom_MeasurementInputAssetVolatilityMember"
      decimals="INF"
      unitRef="Pure">80.00</us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput
      contextRef="AsOf2021-12-31_custom_MeasurementInputAssetVolatilityMember"
      decimals="INF"
      unitRef="Pure">80.00</us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput
      contextRef="AsOf2022-12-31_custom_MeasurementInputRevenueVolatilityMember"
      decimals="INF"
      unitRef="Pure">30.00</us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput
      contextRef="AsOf2021-12-31_custom_MeasurementInputRevenueVolatilityMember"
      decimals="INF"
      unitRef="Pure">30.00</us-gaap:BusinessCombinationContingentConsiderationLiabilityMeasurementInput>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_803_eus-gaap--PropertyPlantAndEquipmentDisclosureTextBlock_zTSQtH96u0pc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
6 &#x2013; &lt;span id="xdx_824_zxVUEkm82tod"&gt;Property and Equipment&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_894_eus-gaap--PropertyPlantAndEquipmentTextBlock_zufKFbdQN93d" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Property
and equipment, net consisted of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BB_zAadQyTXeCaa" style="display: none"&gt;Schedule
of Property and Equipment&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; font-weight: bold; text-align: center"&gt;Estimated Useful Lives&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt; in years&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 42%; text-align: left"&gt;Lab equipment&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 16%; text-align: center"&gt;&lt;span id="xdx_901_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember__srt--RangeAxis__srt--MinimumMember_znVZJlCzr6Ic" title="Property and equipment estimated useful lives"&gt;3&lt;/span&gt; - &lt;span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember__srt--RangeAxis__srt--MaximumMember_zF5oTl8H1ogj" title="Property and equipment estimated useful lives"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zmu1PucZUiq8" style="width: 16%; text-align: right" title="Property and equipment, gross"&gt;3,574,730&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zvVVONa7RET4" style="width: 16%; text-align: right" title="Property and equipment, gross"&gt;2,476,813&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Leasehold improvements&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: center"&gt;&lt;span id="xdx_901_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdsAndLeaseholdImprovementsMember__srt--RangeAxis__srt--MinimumMember_ztUqRzb2vuV8" title="Property and equipment estimated useful lives"&gt;0&lt;/span&gt; -&lt;span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdsAndLeaseholdImprovementsMember__srt--RangeAxis__srt--MaximumMember_z2MMxlVmKNS" title="Property and equipment estimated useful lives"&gt;3&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_z0kVDaESJbz7" style="text-align: right" title="Property and equipment, gross"&gt;224,957&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zAWPIBdXfhZj" style="text-align: right" title="Property and equipment, gross"&gt;3,157&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Office equipment, furniture and other&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: center"&gt;&lt;span id="xdx_90B_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember__srt--RangeAxis__srt--MinimumMember_zKxW5Kt7wvUf" title="Property and equipment estimated useful lives"&gt;2&lt;/span&gt; - &lt;span id="xdx_905_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember__srt--RangeAxis__srt--MaximumMember_z7soLGISr3b7" title="Property and equipment estimated useful lives"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zI15Oax5n0q3" style="text-align: right" title="Property and equipment, gross"&gt;112,044&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zj6rcaM7vD6j" style="text-align: right" title="Property and equipment, gross"&gt;75,401&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Less accumulated depreciation and amortization&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iNI_pp0p0_di_c20221231_ztsrrGjJbPX6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: accumulated depreciation"&gt;(1,372,248&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iNI_di_c20211231_zSRxpUN4hrMb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: accumulated depreciation"&gt;(622,155&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt; text-align: left; padding-bottom: 2.5pt"&gt;Fixed assets, net&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20221231_zqUJfyGgMRq2" style="border-bottom: Black 2.5pt double; text-align: right" title="Property and equipment, net"&gt;2,539,483&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231_zK8eEBaGZP4a" style="border-bottom: Black 2.5pt double; text-align: right" title="Property and equipment, net"&gt;1,933,216&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A3_zYZGAX9aj8r6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_894_eus-gaap--PropertyPlantAndEquipmentTextBlock_zufKFbdQN93d" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Property
and equipment, net consisted of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BB_zAadQyTXeCaa" style="display: none"&gt;Schedule
of Property and Equipment&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; font-weight: bold; text-align: center"&gt;Estimated Useful Lives&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt; in years&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 42%; text-align: left"&gt;Lab equipment&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 16%; text-align: center"&gt;&lt;span id="xdx_901_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember__srt--RangeAxis__srt--MinimumMember_znVZJlCzr6Ic" title="Property and equipment estimated useful lives"&gt;3&lt;/span&gt; - &lt;span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember__srt--RangeAxis__srt--MaximumMember_zF5oTl8H1ogj" title="Property and equipment estimated useful lives"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zmu1PucZUiq8" style="width: 16%; text-align: right" title="Property and equipment, gross"&gt;3,574,730&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--EquipmentMember_zvVVONa7RET4" style="width: 16%; text-align: right" title="Property and equipment, gross"&gt;2,476,813&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Leasehold improvements&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: center"&gt;&lt;span id="xdx_901_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdsAndLeaseholdImprovementsMember__srt--RangeAxis__srt--MinimumMember_ztUqRzb2vuV8" title="Property and equipment estimated useful lives"&gt;0&lt;/span&gt; -&lt;span id="xdx_902_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdsAndLeaseholdImprovementsMember__srt--RangeAxis__srt--MaximumMember_z2MMxlVmKNS" title="Property and equipment estimated useful lives"&gt;3&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_z0kVDaESJbz7" style="text-align: right" title="Property and equipment, gross"&gt;224,957&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--LeaseholdImprovementsMember_zAWPIBdXfhZj" style="text-align: right" title="Property and equipment, gross"&gt;3,157&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Office equipment, furniture and other&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: center"&gt;&lt;span id="xdx_90B_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember__srt--RangeAxis__srt--MinimumMember_zKxW5Kt7wvUf" title="Property and equipment estimated useful lives"&gt;2&lt;/span&gt; - &lt;span id="xdx_905_eus-gaap--PropertyPlantAndEquipmentUsefulLife_dtY_c20220101__20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember__srt--RangeAxis__srt--MaximumMember_z7soLGISr3b7" title="Property and equipment estimated useful lives"&gt;5&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20221231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zI15Oax5n0q3" style="text-align: right" title="Property and equipment, gross"&gt;112,044&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--PropertyPlantAndEquipmentGross_iI_pp0p0_c20211231__us-gaap--PropertyPlantAndEquipmentByTypeAxis__us-gaap--OfficeEquipmentMember_zj6rcaM7vD6j" style="text-align: right" title="Property and equipment, gross"&gt;75,401&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Less accumulated depreciation and amortization&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iNI_pp0p0_di_c20221231_ztsrrGjJbPX6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: accumulated depreciation"&gt;(1,372,248&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_iNI_di_c20211231_zSRxpUN4hrMb" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less: accumulated depreciation"&gt;(622,155&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt; text-align: left; padding-bottom: 2.5pt"&gt;Fixed assets, net&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20221231_zqUJfyGgMRq2" style="border-bottom: Black 2.5pt double; text-align: right" title="Property and equipment, net"&gt;2,539,483&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--PropertyPlantAndEquipmentNet_iI_pp0p0_c20211231_zK8eEBaGZP4a" style="border-bottom: Black 2.5pt double; text-align: right" title="Property and equipment, net"&gt;1,933,216&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="From2022-01-012022-12-31_us-gaap_EquipmentMember_srt_MinimumMember">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="From2022-01-012022-12-31_us-gaap_EquipmentMember_srt_MaximumMember">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2022-12-31_us-gaap_EquipmentMember"
      decimals="0"
      unitRef="USD">3574730</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_us-gaap_EquipmentMember"
      decimals="0"
      unitRef="USD">2476813</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="From2022-01-012022-12-31_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_srt_MinimumMember">P0Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="From2022-01-012022-12-31_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_srt_MaximumMember">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2022-12-31_us-gaap_LeaseholdImprovementsMember"
      decimals="0"
      unitRef="USD">224957</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_us-gaap_LeaseholdImprovementsMember"
      decimals="0"
      unitRef="USD">3157</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="From2022-01-012022-12-31_us-gaap_OfficeEquipmentMember_srt_MinimumMember">P2Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="From2022-01-012022-12-31_us-gaap_OfficeEquipmentMember_srt_MaximumMember">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2022-12-31_us-gaap_OfficeEquipmentMember"
      decimals="0"
      unitRef="USD">112044</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2021-12-31_us-gaap_OfficeEquipmentMember"
      decimals="0"
      unitRef="USD">75401</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">1372248</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">622155</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">2539483</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1933216</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_801_eus-gaap--GoodwillAndIntangibleAssetsDisclosureTextBlock_zvTqkoXhIJff" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
7 - &lt;span id="xdx_827_z2i3tE7VZVn6"&gt;Goodwill and Intangible Assets&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Goodwill&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Goodwill
represents the excess of purchase price and related costs over the value assigned to net tangible and identifiable intangible assets
acquired in business combinations. The following table presents the changes in the carrying amount of goodwill for the year ended December
31, 2022:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89B_eus-gaap--ScheduleOfGoodwillTextBlock_zy5wuSkyLhJe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BB_zXJqfN4WXEx2" style="display: none"&gt;Schedule
of Goodwill&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%"&gt;Balance as of December 31, 2021&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--Goodwill_iS_c20220101__20221231_zSG9p4Pxx3b3" style="width: 16%; text-align: right" title="Goodwil - beginning"&gt;14,706,818&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Measurement period adjustments&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--GoodwillTranslationAndPurchaseAccountingAdjustments_c20220101__20221231_zpqLXCPVf9Ue" style="text-align: right" title="Measurement period adjustments"&gt;681,728&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Goodwill impairment charges&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--GoodwillImpairmentLoss_iN_di_c20220101__20221231_z4hdoEOIjmW2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill impairment charges"&gt;(15,388,546&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance as of December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--Goodwill_iE_c20220101__20221231_z7ijE6Juloa3" style="border-bottom: Black 2.5pt double; text-align: right" title="Goodwill - ending"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1056"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AE_zAhn09mGzKHg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company assesses goodwill for impairment at the reporting unit level on an annual basis, or whenever events or changes in circumstances
occur that indicate that the fair value of a reporting unit is below its carrying amount. The Company estimates the fair value of its
reporting unit by using forecasts of discounted future cash flows and peer market multiples. If the fair value is less than the carrying
value, impairment will be recognized in the amount by which the carrying value exceeds the fair value. The Company performed a qualitative
and quantitative goodwill impairment assessment as of December 31, 2022. Based on the impairment assessment performed the Company concluded
that it was more likely than not that the fair value of the Company&#x2019;s reporting unit was less than it&#x2019;s carrying amount.
Accordingly, the Company recorded an impairment charge to reduce the carrying value of goodwill to $&lt;span id="xdx_901_eus-gaap--Goodwill_iI_dxL_c20221231_z9GLIApMpEy7" title="Goodwill::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1058"&gt;0&lt;/span&gt;&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Intangible
Assets, Net&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89A_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zUJFjeOcz53i" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Intangible
assets, net consisted of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;span id="xdx_8BB_zxPOmLGPkh4g" style="display: none"&gt;Schedule of Intangible Assets, Net&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="13" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2022&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;Weighted-Average&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Gross&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Net&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;Useful Life (1)&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Carrying&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Accumulated&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Carrying&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(in Years)&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amount&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amortization&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amount&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 28%; text-align: left"&gt;In-process research and development&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 16%; text-align: center"&gt;&lt;span id="xdx_90A_ecustom--IndefiniteLivedIntangibleAssetUsefulLife_c20220101__20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_fKDEp_z31eQo26Yp3h" title="Estimated useful lives in years, term"&gt;Indefinite&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_zlqYNjg9VeQb" style="width: 14%; text-align: right" title="Intangible assets, gross"&gt;26,101,000&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_z6TiZWwKz567" style="width: 14%; text-align: right" title="Less accumulated amortization"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1066"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_z1DHedeNQFx8" style="width: 14%; text-align: right" title="Intangible assets, net"&gt;26,101,000&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Non-competition agreements&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: center; padding-bottom: 1.5pt"&gt;&lt;span id="xdx_903_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20220101__20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_fKDEp_zyl1YHHvtPda" title="Estimated useful lives in years"&gt;2.7&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zKLnTMb3a3xj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, gross"&gt;1,094,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zjqD8jYMj49k" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less accumulated amortization"&gt;(426,667&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zkbTNhTIkuk5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, net"&gt;667,333&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; padding-left: 10pt"&gt;Total intangible assets&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231_z0WMvdVhQkE" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, gross"&gt;27,195,000&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231_zlLPxyW87qx9" style="border-bottom: Black 2.5pt double; text-align: right" title="Less accumulated amortization"&gt;(426,667
                                                                          &lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231_z4Mzzlolgmhh" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, net"&gt;26,768,333&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="13" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2021&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;Weighted-Average&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Gross&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Net&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;Useful Life (1)&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Carrying&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Accumulated&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Carrying&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(in Years)&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amount&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amortization&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amount&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 28%; text-align: left"&gt;In-process research and development&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 16%; text-align: center"&gt;&lt;span id="xdx_90D_ecustom--IndefiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_fKDEp_zmb4oy7mWM02" title="Estimated useful lives in years, term"&gt;Indefinite&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" style="width: 14%; text-align: right" title="Intangible assets, gross"&gt;26,101,000&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" style="width: 14%; text-align: right" title="Less accumulated amortization"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1088"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" style="width: 14%; text-align: right" title="Intangible assets, net"&gt;26,101,000&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Non-competition agreements&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: center; padding-bottom: 1.5pt"&gt;&lt;span id="xdx_902_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_fKDEp_zvgT5UO5hyG4" title="Estimated useful lives in years"&gt;2.7&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, gross"&gt;1,094,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less accumulated amortization"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1096"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, net"&gt;1,094,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; padding-left: 10pt"&gt;Total intangible assets&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, gross"&gt;27,195,000&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Less accumulated amortization"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1102"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, net"&gt;27,195,000&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A8_zkJq1VlpJQtl" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_890_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zSenvXJLUMnd" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
expected future annual amortization expense of the Company&#x2019;s intangible assets held as of December 31, 2022 is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B0_z9TOq4K1fl82" style="display: none"&gt;Schedule
of Future Amortization Expense&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left; font-weight: bold"&gt;Year Ending December 31,&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_495_20221231_zZOgbiMOmSo6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amortization Expense&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_maFLIANzZiM_z6Mwhi5MtC03" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: left; padding-left: 10pt"&gt;2023&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;364,668&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_maFLIANzZiM_zPi6oRKVcS4g" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;2024&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;302,665&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsNet_iTI_mtFLIANzZiM_z3TYXfozHJl7" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;667,333&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A0_zHH8uO1SyI2a" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfGoodwillTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_89B_eus-gaap--ScheduleOfGoodwillTextBlock_zy5wuSkyLhJe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BB_zXJqfN4WXEx2" style="display: none"&gt;Schedule
of Goodwill&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%"&gt;Balance as of December 31, 2021&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--Goodwill_iS_c20220101__20221231_zSG9p4Pxx3b3" style="width: 16%; text-align: right" title="Goodwil - beginning"&gt;14,706,818&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Measurement period adjustments&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--GoodwillTranslationAndPurchaseAccountingAdjustments_c20220101__20221231_zpqLXCPVf9Ue" style="text-align: right" title="Measurement period adjustments"&gt;681,728&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Goodwill impairment charges&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--GoodwillImpairmentLoss_iN_di_c20220101__20221231_z4hdoEOIjmW2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Goodwill impairment charges"&gt;(15,388,546&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Balance as of December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--Goodwill_iE_c20220101__20221231_z7ijE6Juloa3" style="border-bottom: Black 2.5pt double; text-align: right" title="Goodwill - ending"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1056"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">14706818</us-gaap:Goodwill>
    <us-gaap:GoodwillTranslationAndPurchaseAccountingAdjustments
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">681728</us-gaap:GoodwillTranslationAndPurchaseAccountingAdjustments>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">15388546</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_89A_eus-gaap--ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_zUJFjeOcz53i" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Intangible
assets, net consisted of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;span id="xdx_8BB_zxPOmLGPkh4g" style="display: none"&gt;Schedule of Intangible Assets, Net&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="13" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2022&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;Weighted-Average&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Gross&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Net&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;Useful Life (1)&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Carrying&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Accumulated&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Carrying&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(in Years)&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amount&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amortization&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amount&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 28%; text-align: left"&gt;In-process research and development&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 16%; text-align: center"&gt;&lt;span id="xdx_90A_ecustom--IndefiniteLivedIntangibleAssetUsefulLife_c20220101__20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_fKDEp_z31eQo26Yp3h" title="Estimated useful lives in years, term"&gt;Indefinite&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_zlqYNjg9VeQb" style="width: 14%; text-align: right" title="Intangible assets, gross"&gt;26,101,000&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_z6TiZWwKz567" style="width: 14%; text-align: right" title="Less accumulated amortization"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1066"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_z1DHedeNQFx8" style="width: 14%; text-align: right" title="Intangible assets, net"&gt;26,101,000&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Non-competition agreements&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: center; padding-bottom: 1.5pt"&gt;&lt;span id="xdx_903_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20220101__20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_fKDEp_zyl1YHHvtPda" title="Estimated useful lives in years"&gt;2.7&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zKLnTMb3a3xj" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, gross"&gt;1,094,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zjqD8jYMj49k" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less accumulated amortization"&gt;(426,667&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_zkbTNhTIkuk5" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, net"&gt;667,333&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; padding-left: 10pt"&gt;Total intangible assets&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsGross_iI_pp0p0_c20221231_z0WMvdVhQkE" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, gross"&gt;27,195,000&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_iI_pp0p0_c20221231_zlLPxyW87qx9" style="border-bottom: Black 2.5pt double; text-align: right" title="Less accumulated amortization"&gt;(426,667
                                                                          &lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--IntangibleAssetsNetExcludingGoodwill_iI_pp0p0_c20221231_z4Mzzlolgmhh" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, net"&gt;26,768,333&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="13" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2021&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;Weighted-Average&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Gross&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Net&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;Useful Life (1)&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Carrying&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Accumulated&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Carrying&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;(in Years)&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amount&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amortization&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amount&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 28%; text-align: left"&gt;In-process research and development&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 16%; text-align: center"&gt;&lt;span id="xdx_90D_ecustom--IndefiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_fKDEp_zmb4oy7mWM02" title="Estimated useful lives in years, term"&gt;Indefinite&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" style="width: 14%; text-align: right" title="Intangible assets, gross"&gt;26,101,000&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" style="width: 14%; text-align: right" title="Less accumulated amortization"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1088"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--InProcessResearchAndDevelopmentMember_pp0p0" style="width: 14%; text-align: right" title="Intangible assets, net"&gt;26,101,000&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Non-competition agreements&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: center; padding-bottom: 1.5pt"&gt;&lt;span id="xdx_902_eus-gaap--FiniteLivedIntangibleAssetUsefulLife_dtY_c20210101__20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_fKDEp_zvgT5UO5hyG4" title="Estimated useful lives in years"&gt;2.7&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, gross"&gt;1,094,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Less accumulated amortization"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1096"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231__us-gaap--FiniteLivedIntangibleAssetsByMajorClassAxis__us-gaap--NoncompeteAgreementsMember_pp0p0" style="border-bottom: Black 1.5pt solid; text-align: right" title="Intangible assets, net"&gt;1,094,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; padding-left: 10pt"&gt;Total intangible assets&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--FiniteLivedIntangibleAssetsGross_c20211231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, gross"&gt;27,195,000&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--FiniteLivedIntangibleAssetsAccumulatedAmortization_c20211231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Less accumulated amortization"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1102"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--IntangibleAssetsNetExcludingGoodwill_c20211231_pp0p0" style="border-bottom: Black 2.5pt double; text-align: right" title="Intangible assets, net"&gt;27,195,000&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <CODX:IndefiniteLivedIntangibleAssetUsefulLife contextRef="From2022-01-012022-12-31_us-gaap_InProcessResearchAndDevelopmentMember">Indefinite</CODX:IndefiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2022-12-31_us-gaap_InProcessResearchAndDevelopmentMember"
      decimals="0"
      unitRef="USD">26101000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="AsOf2022-12-31_us-gaap_InProcessResearchAndDevelopmentMember"
      decimals="0"
      unitRef="USD">26101000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="From2022-01-012022-12-31_us-gaap_NoncompeteAgreementsMember">P2Y8M12D</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2022-12-31_us-gaap_NoncompeteAgreementsMember"
      decimals="0"
      unitRef="USD">1094000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2022-12-31_us-gaap_NoncompeteAgreementsMember"
      decimals="0"
      unitRef="USD">-426667</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="AsOf2022-12-31_us-gaap_NoncompeteAgreementsMember"
      decimals="0"
      unitRef="USD">667333</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">27195000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">-426667</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">26768333</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <CODX:IndefiniteLivedIntangibleAssetUsefulLife contextRef="From2021-01-012021-12-31_us-gaap_InProcessResearchAndDevelopmentMember">Indefinite</CODX:IndefiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2021-12-31_us-gaap_InProcessResearchAndDevelopmentMember"
      decimals="0"
      unitRef="USD">26101000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="AsOf2021-12-31_us-gaap_InProcessResearchAndDevelopmentMember"
      decimals="0"
      unitRef="USD">26101000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="From2021-01-012021-12-31_us-gaap_NoncompeteAgreementsMember">P2Y8M12D</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2021-12-31_us-gaap_NoncompeteAgreementsMember"
      decimals="0"
      unitRef="USD">1094000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="AsOf2021-12-31_us-gaap_NoncompeteAgreementsMember"
      decimals="0"
      unitRef="USD">1094000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">27195000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">27195000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_890_eus-gaap--ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_zSenvXJLUMnd" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
expected future annual amortization expense of the Company&#x2019;s intangible assets held as of December 31, 2022 is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B0_z9TOq4K1fl82" style="display: none"&gt;Schedule
of Future Amortization Expense&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left; font-weight: bold"&gt;Year Ending December 31,&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_495_20221231_zZOgbiMOmSo6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Amortization Expense&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_iI_maFLIANzZiM_z6Mwhi5MtC03" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: left; padding-left: 10pt"&gt;2023&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;364,668&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_iI_maFLIANzZiM_zPi6oRKVcS4g" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 10pt"&gt;2024&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;302,665&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--FiniteLivedIntangibleAssetsNet_iTI_mtFLIANzZiM_z3TYXfozHJl7" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;667,333&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">364668</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">302665</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">667333</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_802_eus-gaap--AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_zm6Y3esEzqU3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
8 - &lt;span id="xdx_825_zAY3xpmuykU1"&gt;Accrued Expenses&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_895_eus-gaap--ScheduleOfAccruedLiabilitiesTableTextBlock_z9hfSnagKB3e" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Accrued
expenses consisted of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;span id="xdx_8B6_zH6tJZRCqCYg" style="display: none"&gt;Schedule of Accrued Expenses&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_496_20221231_zkSHRlKVq0s3" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20211231_zjQv8PLgiAbg" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--AccruedPayrollTaxesCurrent_iI_maALCzYz0_zviMbejSzDh2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;Payroll liabilities&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;428,354&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;2,455,694&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--AccruedSalesCommissionCurrent_iI_maALCzYz0_z4EfOxx8R6g1" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Distributor commissions&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;159,725&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;509,500&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--OtherAccruedLiabilitiesCurrent_iI_maALCzYz0_zW1KYHmRCux8" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Other accrued liabilities&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;346,368&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;894,458&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--AccruedLiabilitiesCurrent_iI_mtALCzYz0_zKwdyYIa59bj" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total accrued expenses&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;934,447&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;3,859,652&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A5_zWUluv5rLJP" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_895_eus-gaap--ScheduleOfAccruedLiabilitiesTableTextBlock_z9hfSnagKB3e" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Accrued
expenses consisted of the following:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;span id="xdx_8B6_zH6tJZRCqCYg" style="display: none"&gt;Schedule of Accrued Expenses&lt;/span&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_496_20221231_zkSHRlKVq0s3" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20211231_zjQv8PLgiAbg" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--AccruedPayrollTaxesCurrent_iI_maALCzYz0_zviMbejSzDh2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;Payroll liabilities&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;428,354&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;2,455,694&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--AccruedSalesCommissionCurrent_iI_maALCzYz0_z4EfOxx8R6g1" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Distributor commissions&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;159,725&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;509,500&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--OtherAccruedLiabilitiesCurrent_iI_maALCzYz0_zW1KYHmRCux8" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Other accrued liabilities&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;346,368&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;894,458&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--AccruedLiabilitiesCurrent_iI_mtALCzYz0_zKwdyYIa59bj" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Total accrued expenses&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;934,447&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;3,859,652&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <us-gaap:AccruedPayrollTaxesCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">428354</us-gaap:AccruedPayrollTaxesCurrent>
    <us-gaap:AccruedPayrollTaxesCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">2455694</us-gaap:AccruedPayrollTaxesCurrent>
    <us-gaap:AccruedSalesCommissionCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">159725</us-gaap:AccruedSalesCommissionCurrent>
    <us-gaap:AccruedSalesCommissionCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">509500</us-gaap:AccruedSalesCommissionCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">346368</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">894458</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">934447</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">3859652</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:RevenueFromContractWithCustomerTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_804_eus-gaap--RevenueFromContractWithCustomerTextBlock_zJUwRxDKasJf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
9 &#x2013; &lt;span id="xdx_822_zjkqTOCXytW6"&gt;Revenue&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89A_eus-gaap--ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_zM7wlJgRkMy7" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table sets forth revenue by geographic area:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;span id="xdx_8B9_zmM82Zzp7lIe" style="display: none"&gt;Summary of Revenue by Geographic Area&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Years Ended December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;United States&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231__srt--StatementGeographicalAxis__country--US_zimrR6QgVbRf" style="width: 16%; text-align: right" title="Revenue"&gt;24,671,554&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__country--US_z7WKIFaN0eG2" style="width: 16%; text-align: right" title="Revenue"&gt;52,185,812&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Rest of World&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231__srt--StatementGeographicalAxis__custom--RestOfWorldMember_zYuxB70qmDc2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Revenue"&gt;9,546,655&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__custom--RestOfWorldMember_zCDwnwTChxM1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Revenue"&gt;45,699,791&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 10pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231_za3Y0xDQt9R3" style="border-bottom: Black 2.5pt double; text-align: right" title="Revenue"&gt;34,218,209&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231_zIhBz77hyrBd" style="border-bottom: Black 2.5pt double; text-align: right" title="Revenue"&gt;97,885,603&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Percentage of revenue by area:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;United States&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20220101__20221231__srt--StatementGeographicalAxis__country--US__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zxV4aaR3VD1h" style="text-align: right" title="Percentage of revenue"&gt;72&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20210101__20211231__srt--StatementGeographicalAxis__country--US__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zRsBOsltOZh1" style="text-align: right" title="Percentage of revenue"&gt;53&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Rest of World&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20220101__20221231__srt--StatementGeographicalAxis__custom--RestOfWorldMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zWJhVAw4HHPh" style="text-align: right" title="Percentage of revenue"&gt;28&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20210101__20211231__srt--StatementGeographicalAxis__custom--RestOfWorldMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zbZY118tALWh" style="text-align: right" title="Percentage of revenue"&gt;47&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AE_z6DTVykvSYy6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Deferred
Revenue&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_898_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_zdzSJgbIrtU6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Changes
in the Company&#x2019;s deferred revenue balance for the years ended December 31, 2022 and 2021 were as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B9_zgyashcgWsyc" style="display: none"&gt;Schedule of Deferred Revenue&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%; padding-left: 0pt"&gt;Balance as of December 31, 2020&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--ContractWithCustomerLiability_iS_c20210101__20211231_zaNqra3MoAck" style="width: 14%; text-align: right" title="Deferred revenue, beginning balance"&gt;305,307&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Revenue recognized included in deferred revenue balance at the beginning of the period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_iN_di_c20210101__20211231_znJaQpWhemu" style="text-align: right" title="Revenue recognized included in deferred revenue balance at the beginning of the period"&gt;(256,110&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Increase due to prepayments from customers&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_ecustom--IncreaseDueToPrepaymentsFromCustomers_c20210101__20211231_zIdtHNZ5daS4" style="text-align: right" title="Increase due to prepayments from customers"&gt;79,213&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Increase due to note receivable&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_ecustom--IncreaseDueToNoteReceivable_c20210101__20211231_zhlcMCtd0jnc" style="text-align: right" title="Increase due to note receivable"&gt;150,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Decrease due to refunds to customers and application to open balances&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_ecustom--DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances_iN_di_c20210101__20211231_zWwoYEv5wWr6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Decrease due to refunds to customers and application to open balances"&gt;(128,410&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 0pt"&gt;Balance as of December 31, 2021&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--ContractWithCustomerLiability_iS_c20220101__20221231_zFhMrgQZDwWk" style="text-align: right" title="Deferred revenue, beginning balance"&gt;150,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Revenue recognized included in deferred revenue balance at the beginning of the period&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_iN_di_c20220101__20221231_zxxFrWtj6R1c" style="border-bottom: Black 1.5pt solid; text-align: right" title="Revenue recognized included in deferred revenue balance at the beginning of the period"&gt;(150,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 0pt"&gt;Balance as of December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--ContractWithCustomerLiability_iE_c20220101__20221231_zkZzjylX9Hyi" style="border-bottom: Black 2.5pt double; text-align: right" title="Deferred revenue, Ending balance"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1170"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A7_zHA6d8SMDEae" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_89A_eus-gaap--ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_zM7wlJgRkMy7" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table sets forth revenue by geographic area:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;span id="xdx_8B9_zmM82Zzp7lIe" style="display: none"&gt;Summary of Revenue by Geographic Area&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Years Ended December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left"&gt;United States&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231__srt--StatementGeographicalAxis__country--US_zimrR6QgVbRf" style="width: 16%; text-align: right" title="Revenue"&gt;24,671,554&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__country--US_z7WKIFaN0eG2" style="width: 16%; text-align: right" title="Revenue"&gt;52,185,812&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;Rest of World&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231__srt--StatementGeographicalAxis__custom--RestOfWorldMember_zYuxB70qmDc2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Revenue"&gt;9,546,655&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231__srt--StatementGeographicalAxis__custom--RestOfWorldMember_zCDwnwTChxM1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Revenue"&gt;45,699,791&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 10pt"&gt;Total&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20220101__20221231_za3Y0xDQt9R3" style="border-bottom: Black 2.5pt double; text-align: right" title="Revenue"&gt;34,218,209&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--RevenueFromContractWithCustomerIncludingAssessedTax_pp0p0_c20210101__20211231_zIhBz77hyrBd" style="border-bottom: Black 2.5pt double; text-align: right" title="Revenue"&gt;97,885,603&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Percentage of revenue by area:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;United States&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20220101__20221231__srt--StatementGeographicalAxis__country--US__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zxV4aaR3VD1h" style="text-align: right" title="Percentage of revenue"&gt;72&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20210101__20211231__srt--StatementGeographicalAxis__country--US__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zRsBOsltOZh1" style="text-align: right" title="Percentage of revenue"&gt;53&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Rest of World&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20220101__20221231__srt--StatementGeographicalAxis__custom--RestOfWorldMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zWJhVAw4HHPh" style="text-align: right" title="Percentage of revenue"&gt;28&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--ConcentrationRiskPercentage1_dp_uPure_c20210101__20211231__srt--StatementGeographicalAxis__custom--RestOfWorldMember__us-gaap--ConcentrationRiskByBenchmarkAxis__us-gaap--SalesRevenueNetMember__us-gaap--ConcentrationRiskByTypeAxis__us-gaap--GeographicConcentrationRiskMember_zbZY118tALWh" style="text-align: right" title="Percentage of revenue"&gt;47&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2022-01-012022-12-31_country_US"
      decimals="0"
      unitRef="USD">24671554</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2021-01-012021-12-31_country_US"
      decimals="0"
      unitRef="USD">52185812</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2022-01-012022-12-31_custom_RestOfWorldMember"
      decimals="0"
      unitRef="USD">9546655</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2021-01-012021-12-31_custom_RestOfWorldMember"
      decimals="0"
      unitRef="USD">45699791</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">34218209</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">97885603</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="From2022-01-012022-12-31_country_US_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember"
      decimals="INF"
      unitRef="Pure">0.72</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="From2021-01-012021-12-31_country_US_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember"
      decimals="INF"
      unitRef="Pure">0.53</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="From2022-01-012022-12-31_custom_RestOfWorldMember_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember"
      decimals="INF"
      unitRef="Pure">0.28</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="From2021-01-012021-12-31_custom_RestOfWorldMember_us-gaap_SalesRevenueNetMember_us-gaap_GeographicConcentrationRiskMember"
      decimals="INF"
      unitRef="Pure">0.47</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_898_eus-gaap--ContractWithCustomerAssetAndLiabilityTableTextBlock_zdzSJgbIrtU6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Changes
in the Company&#x2019;s deferred revenue balance for the years ended December 31, 2022 and 2021 were as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B9_zgyashcgWsyc" style="display: none"&gt;Schedule of Deferred Revenue&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 82%; padding-left: 0pt"&gt;Balance as of December 31, 2020&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--ContractWithCustomerLiability_iS_c20210101__20211231_zaNqra3MoAck" style="width: 14%; text-align: right" title="Deferred revenue, beginning balance"&gt;305,307&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Revenue recognized included in deferred revenue balance at the beginning of the period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_iN_di_c20210101__20211231_znJaQpWhemu" style="text-align: right" title="Revenue recognized included in deferred revenue balance at the beginning of the period"&gt;(256,110&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Increase due to prepayments from customers&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_ecustom--IncreaseDueToPrepaymentsFromCustomers_c20210101__20211231_zIdtHNZ5daS4" style="text-align: right" title="Increase due to prepayments from customers"&gt;79,213&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;Increase due to note receivable&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_ecustom--IncreaseDueToNoteReceivable_c20210101__20211231_zhlcMCtd0jnc" style="text-align: right" title="Increase due to note receivable"&gt;150,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Decrease due to refunds to customers and application to open balances&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_ecustom--DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances_iN_di_c20210101__20211231_zWwoYEv5wWr6" style="border-bottom: Black 1.5pt solid; text-align: right" title="Decrease due to refunds to customers and application to open balances"&gt;(128,410&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 0pt"&gt;Balance as of December 31, 2021&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--ContractWithCustomerLiability_iS_c20220101__20221231_zFhMrgQZDwWk" style="text-align: right" title="Deferred revenue, beginning balance"&gt;150,000&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Revenue recognized included in deferred revenue balance at the beginning of the period&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--ContractWithCustomerLiabilityRevenueRecognized_iN_di_c20220101__20221231_zxxFrWtj6R1c" style="border-bottom: Black 1.5pt solid; text-align: right" title="Revenue recognized included in deferred revenue balance at the beginning of the period"&gt;(150,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt; padding-left: 0pt"&gt;Balance as of December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--ContractWithCustomerLiability_iE_c20220101__20221231_zkZzjylX9Hyi" style="border-bottom: Black 2.5pt double; text-align: right" title="Deferred revenue, Ending balance"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1170"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:ContractWithCustomerLiability contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">305307</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">256110</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <CODX:IncreaseDueToPrepaymentsFromCustomers
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">79213</CODX:IncreaseDueToPrepaymentsFromCustomers>
    <CODX:IncreaseDueToNoteReceivable
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">150000</CODX:IncreaseDueToNoteReceivable>
    <CODX:DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">128410</CODX:DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances>
    <us-gaap:ContractWithCustomerLiability contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">150000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">150000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:EarningsPerShareTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_804_eus-gaap--EarningsPerShareTextBlock_zot6njMAJs1c" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
10 &#x2013; &lt;span id="xdx_82D_zxFu40OGiPvi"&gt;Earnings per Share&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_896_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zFu7d9B86eWh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table reconciles the numerator and the denominator used to calculate basic and diluted earnings per share for years ended December
31, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BC_zW4rVQiMKRi" style="display: none"&gt;Schedule of Basic and Diluted Earnings Per Share&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20220101__20221231_z9M85j28GsQ8" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49D_20210101__20211231_z5oOCk12xVr9" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Years Ended December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold"&gt;Numerator&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--NetIncomeLoss_z297CqgT2nP7" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left; padding-bottom: 2.5pt"&gt;Net income, as reported&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; width: 16%; text-align: right"&gt;(14,238,249&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; width: 16%; text-align: right"&gt;36,658,564&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font-weight: bold"&gt;Denominator&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_zpKSsPuKKwNk" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Weighted average shares, basic&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;31,479,028&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;28,874,555&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--WeightedAverageNumberDilutedSharesOutstandingAdjustment_zGZ0UQ8vOq0j" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Dilutive effect of stock options, warrants and RSUs&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1182"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,029,131&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_zipzMT2Yjxwl" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Shares used to compute diluted earnings per share&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;31,479,028&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;29,903,686&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--EarningsPerShareBasic_pid_zv6tUWCanpve" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Basic earnings per share&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;(0.45&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;1.27&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--EarningsPerShareDiluted_pid_zdtnkl0idUJd" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Diluted earnings per share&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;(0.45&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;1.23&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A4_zZPmtsaZ1mb8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;For
the year ended December 31, 2021, potentially dilutive securities of &lt;span id="xdx_908_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_c20210101__20211231_z5mNnEeEIssi" title="Securities excluded from computation of diluted earnings per share"&gt;154,644&lt;/span&gt; were excluded from the computation of diluted earnings per
share because the effect would have been anti-dilutive. The computation of diluted earnings per share for the years ended December 31,
2022 and December 31, 2021 also excludes the approximately &lt;span id="xdx_90E_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_pn5n6_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zyCVXZeusELd" title="Securities excluded from computation of diluted earnings per share"&gt;&lt;span id="xdx_904_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_pn5n6_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--CommonStockMember_zEL5HRB7zYRg" title="Securities excluded from computation of diluted earnings per share"&gt;1.4&lt;/span&gt;&lt;/span&gt; million shares of common stock and approximately &lt;span id="xdx_90D_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_zqDJ4SZs2htg" title="Securities excluded from computation of diluted earnings per share"&gt;465,000&lt;/span&gt; warrants to purchase
shares of common stock mentioned in Note 4 that are contingent upon the achievement of certain milestones.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
a result of incurring a net loss for the year ended December 31, 2022, &lt;span id="xdx_90A_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_pid_do_uShares_c20220101__20221231_zMXTAeNci101" title="Securities excluded from computation of diluted earnings per share"&gt;no&lt;/span&gt; potentially dilutive securities are included in the calculation
of diluted earnings per share because such effect would be anti-dilutive. The Company had potentially dilutive securities as of December
31, 2022, consisting of: (i) &lt;span id="xdx_901_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_c20220101__20221231__us-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis__us-gaap--RestrictedStockUnitsRSUMember_zfMMExuuL1V4" title="Securities excluded from computation of diluted earnings per share"&gt;1,443,238&lt;/span&gt; restricted stock units and (ii) &lt;span id="xdx_903_eus-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_c20220101__20221231__us-gaap--AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis__us-gaap--EmployeeStockOptionMember_zCWZUpG2lyZe" title="Securities excluded from computation of diluted earnings per share"&gt;50,000&lt;/span&gt; options.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_896_eus-gaap--ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_zFu7d9B86eWh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table reconciles the numerator and the denominator used to calculate basic and diluted earnings per share for years ended December
31, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BC_zW4rVQiMKRi" style="display: none"&gt;Schedule of Basic and Diluted Earnings Per Share&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20220101__20221231_z9M85j28GsQ8" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49D_20210101__20211231_z5oOCk12xVr9" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Years Ended December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold"&gt;Numerator&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--NetIncomeLoss_z297CqgT2nP7" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%; text-align: left; padding-bottom: 2.5pt"&gt;Net income, as reported&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; width: 16%; text-align: right"&gt;(14,238,249&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; width: 16%; text-align: right"&gt;36,658,564&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="font-weight: bold"&gt;Denominator&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--WeightedAverageNumberOfSharesOutstandingBasic_zpKSsPuKKwNk" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Weighted average shares, basic&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;31,479,028&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;28,874,555&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--WeightedAverageNumberDilutedSharesOutstandingAdjustment_zGZ0UQ8vOq0j" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Dilutive effect of stock options, warrants and RSUs&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1182"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,029,131&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--WeightedAverageNumberOfDilutedSharesOutstanding_zipzMT2Yjxwl" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Shares used to compute diluted earnings per share&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;31,479,028&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;29,903,686&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_405_eus-gaap--EarningsPerShareBasic_pid_zv6tUWCanpve" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Basic earnings per share&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;(0.45&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;1.27&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--EarningsPerShareDiluted_pid_zdtnkl0idUJd" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Diluted earnings per share&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;(0.45&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;1.23&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-14238249</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">36658564</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">31479028</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Shares">28874555</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Shares">1029131</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">31479028</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Shares">29903686</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">-0.45</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">1.27</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">-0.45</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">1.23</us-gaap:EarningsPerShareDiluted>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Shares">154644</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="From2022-01-012022-12-31_us-gaap_CommonStockMember"
      decimals="-5"
      unitRef="Shares">1400000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="From2021-01-012021-12-31_us-gaap_CommonStockMember"
      decimals="-5"
      unitRef="Shares">1400000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="From2021-01-012021-12-31_us-gaap_WarrantMember"
      decimals="INF"
      unitRef="Shares">465000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      unitRef="Shares">1443238</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="From2022-01-012022-12-31_us-gaap_EmployeeStockOptionMember"
      decimals="INF"
      unitRef="Shares">50000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_80C_eus-gaap--DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_zrE0U3lqKW07" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
11 &#x2013; &lt;span id="xdx_82A_zjDZwJ8HzAl8"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Stock
Incentive Plans&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company&#x2019;s board of directors adopted, and shareholders approved, the Co-Diagnostics, Inc. Amended and Restated 2015 Long Term Incentive
Plan (the &#x201c;Incentive Plan&#x201d;) providing for the issuance of stock-based incentive awards to employees, officers, consultants,
directors and independent contractors. On August 31, 2022 the shareholders approved an increase in the number of awards available for
issuance under the Incentive Plan to an aggregate of &lt;span id="xdx_900_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_iI_c20220831__us-gaap--PlanNameAxis__custom--TwoThousandFifteenLongTermIncentivePlanMember_z17TDeg04W69" title="Number of common shares availalble for issuance"&gt;12,000,000&lt;/span&gt; shares of common stock. The number of awards available for issuance under
the Incentive Plan was &lt;span id="xdx_907_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_iI_c20221231__us-gaap--PlanNameAxis__custom--TwoThousandFifteenLongTermIncentivePlanMember_z6l0Wg4KYHKd" title="Number of common shares availalble for issuance"&gt;6,210,790&lt;/span&gt; at December 31, 2022.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Stock
Options&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89D_eus-gaap--ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_zU7Jdw4RcIo6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table summarizes option activity during the years ended December 31, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B7_zUfDgN8BJuNc" style="display: none"&gt;Schedule of Option Activity&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Number of Options&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Weighted Average Exercise Price&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Weighted Average Fair Value&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Weighted Average Remaining Contractual Life (Years)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 44%"&gt;Outstanding at December 31, 2020&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_c20210101__20211231_zZ8tWKvxHUo1" style="width: 10%; text-align: right" title="Number of Options Outstanding, Beginning"&gt;1,300,588&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zYlYqcyPL3vj" style="width: 10%; text-align: right" title="Weighted Average Exercise Price Outstanding, Beginning"&gt;2.44&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20210101__20211231_ziwNIJ8YdwV8" style="width: 10%; text-align: right" title="Weighted Average Fair Value Outstanding, Beginning"&gt;1.24&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_c20210101__20211231_ztgppmJTgss7" style="text-align: right" title="Number of Options Outstanding, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1222"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zgPhkaRRZ2Nf" style="text-align: right" title="Weighted Average Exercise Price, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1224"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20210101__20211231_zqclO0wK9Vm8" style="text-align: right" title="Weighted Average Fair Value, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1226"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Expired&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_c20210101__20211231_zYdtBO0NMSr3" style="text-align: right" title="Number of Options Outstanding, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1228"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zU5MuRoAul8d" style="text-align: right" title="Weighted Average Exercise Price, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1230"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_c20210101__20211231_z8aAk9CDvFoh" style="text-align: right" title="Weighted Average Fair Value, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1232"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Forfeited/Cancelled&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_c20210101__20211231_zu1AG2fNXBD4" style="text-align: right" title="Number of Options Outstanding, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1234"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_c20210101__20211231_zgjwcSQcTQ95" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1236"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_c20210101__20211231_zwKulepzb3gg" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1238"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;Exercised&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_di_c20210101__20211231_z6fnIuxBWCek" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Options Outstanding, Exercised"&gt;(189,225&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zugS8rkljjsj" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised"&gt;2.38&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised_pid_c20210101__20211231_zkJOrwsIEpab" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised"&gt;1.12&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Outstanding at December 31, 2021&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_c20220101__20221231_z9wxyPHMMC1" style="text-align: right" title="Number of Options Outstanding, Beginning"&gt;1,111,363&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20220101__20221231_zk2AcgXgmtJ3" style="text-align: right" title="Weighted Average Exercise Price Outstanding, Beginning"&gt;2.12&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20220101__20221231_zjInKmA0dMTe" style="text-align: right" title="Weighted Average Fair Value Outstanding, Beginning"&gt;1.31&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_c20220101__20221231_z5FBgPgVdjsh" style="text-align: right" title="Number of Options Outstanding, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1252"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zodQd860ouGg" style="text-align: right" title="Weighted Average Exercise Price, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1254"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20220101__20221231_zJUkPQL4NJwh" style="text-align: right" title="Weighted Average Fair Value, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1256"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Expired&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_c20220101__20221231_zhFFAtW5zTae" style="text-align: right" title="Number of Options Outstanding, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1258"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_c20220101__20221231_zjPS2hiTgCh6" style="text-align: right" title="Weighted Average Exercise Price, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1260"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_c20220101__20221231_zCqNK3wWDpXh" style="text-align: right" title="Weighted Average Fair Value, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1262"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Forfeited/Cancelled&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_c20220101__20221231_zHUUaMJpCdYh" style="text-align: right" title="Number of Options Outstanding, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1264"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_c20220101__20221231_zRUk3W6hhVI8" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1266"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_c20220101__20221231_zUyrkgvRmw2a" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1268"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;Exercised&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_di_c20220101__20221231_zKHpqEMoJre4" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Options Outstanding, Exercised"&gt;(70,791&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zXw1rlKCHEfe" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised"&gt;1.10&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised_pid_c20220101__20221231_zEeDOOsIJpUi" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised"&gt;0.51&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Outstanding at December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_c20220101__20221231_ztBpzDGj1KIb" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Options Outstanding, Ending"&gt;1,040,572&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_pid_c20220101__20221231_zM7nlYIox1r7" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Exercise Price Outstanding, Ending"&gt;2.19&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231_zh6Xy9HXO3h7" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Fair Value Outstanding, Ending"&gt;1.37&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: right"&gt;&lt;span id="xdx_902_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm_dtY_c20220101__20221231_zZjhpbzX2xo7" title="Weighted-average Remaining Contractual Life (years) Outstanding, Ending"&gt;5.88&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Exercisable at December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_c20220101__20221231_zfD15avwOGL1" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Options Exercisable Ending"&gt;1,040,572&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_iE_pid_c20220101__20221231_z62yJHkW9Ii9" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Exercise Price, Exercisable Ending"&gt;2.19&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable_iE_pid_c20220101__20221231_zicDaWEAxMB9" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Fair Value, Exercisable Ending"&gt;1.37&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: right"&gt;&lt;span id="xdx_906_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_dtY_c20220101__20221231_zLgkXNayJ8n7" title="Weighted-average Remaining Contractual Life (years), Exercisable Ending"&gt;5.88&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A5_zhFhDUfFEVUc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
total intrinsic value of options exercised during the years ended December 31, 2022 and 2021 was approximately $&lt;span id="xdx_904_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_pn5n6_c20220101__20221231__us-gaap--AwardTypeAxis__custom--StockOptionsMember_zfoHhQgabM16" title="Intrinsic value of options value exercised"&gt;0.4&lt;/span&gt; million and $&lt;span id="xdx_90C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_pn5n6_c20210101__20211231__us-gaap--AwardTypeAxis__custom--StockOptionsMember_zTPy4yV4Qtlf" title="Intrinsic value of options value exercised"&gt;1.3&lt;/span&gt;
million, respectively. The aggregate intrinsic value of outstanding options at December 31, 2022 and 2021 was approximately $&lt;span id="xdx_901_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_iI_pn5n6_c20221231__us-gaap--AwardTypeAxis__custom--StockOptionsMember_zRM4heEiYrse" title="Aggregate intrinsic value of outstanding options"&gt;0.8&lt;/span&gt; million
and $&lt;span id="xdx_904_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_iI_pn5n6_c20211231__us-gaap--AwardTypeAxis__custom--StockOptionsMember_zB6uVAabqK9e" title="Aggregate intrinsic value of outstanding options"&gt;7.6&lt;/span&gt; million, respectively. As of December 31, 2022, there were no unvested options and no unrecognized stock-based compensation
expense related to options.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Restricted
Stock Units&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_894_eus-gaap--ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_zUCHLGJY8Ayh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
grant date fair value of RSUs granted is determined using the closing market price of the Company&#x2019;s common stock on the grant date
with the associated compensation expense amortized over the vesting period of the awards. The following table sets forth the outstanding
RSUs and related activity for the years ended December 31, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B4_zaWAWQdBhK0d" style="display: none"&gt;Schedule of Outstanding Restricted Stock Units and Related Activity&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Number of RSUs&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Weighted Average Grant Date Fair Value&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%"&gt;Unvested at December 31, 2020&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iS_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zAcGCtZdl6K4" style="width: 16%; text-align: right" title="Number of Restricted Stock Units, Outstanding Beginning"&gt;522,500&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zfaraZnqnNIe" style="width: 16%; text-align: right" title="Weighted Average Grant Date Fair Value, Outstanding Beginning"&gt;10.49&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zyJeREGNgYUd" style="text-align: right" title="Number of Restricted Stock Units, Granted"&gt;1,217,500&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zdRW3eOeTJc6" style="text-align: right" title="Weighted Average Grant Date Fair Value, Granted"&gt;9.76&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Vested&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_iN_di_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zWGnePFfQHc5" style="text-align: right" title="Number of Restricted Stock Units, Vested"&gt;(438,502&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zVA8TI2EtO67" style="text-align: right" title="Weighted Average Grant Date Fair Value, Vested"&gt;10.10&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;Forfeited/Cancelled&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_iN_di_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zWPzKyhi0tfg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Restricted Stock Units, Forfeited/Cancelled"&gt;(34,083&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z2vLdz6kWfQi" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Grant Date Fair Value, Forfeited/Cancelled"&gt;9.91&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Unvested at December 31, 2021&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iS_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zNfdlgokbHU6" style="text-align: right" title="Number of Restricted Stock Units, Outstanding Beginning"&gt;1,267,415&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z2qQgf9Zm1U7" style="text-align: right" title="Weighted Average Grant Date Fair Value, Outstanding Beginning"&gt;9.94&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z7uz8Xx1gkqf" style="text-align: right" title="Number of Restricted Stock Units, Granted"&gt;1,925,476&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z0SjFPXtRXh4" style="text-align: right" title="Weighted Average Grant Date Fair Value, Granted"&gt;5.66&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Vested&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_iN_di_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z3nQ9tx0OeBe" style="text-align: right" title="Number of Restricted Stock Units, Vested"&gt;(725,166&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zjFyOyYUs0Y2" style="text-align: right" title="Weighted Average Grant Date Fair Value, Vested"&gt;8.66&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;Forfeited/Cancelled&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_iN_di_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zwsvr7Az7XU2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Restricted Stock Units, Forfeited/Cancelled"&gt;(41,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zhWA30WQpcU8" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Grant Date Fair Value, Forfeited/Cancelled"&gt;8.31&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Unvested at December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iE_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zGAPwCFupTf9" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Restricted Stock Units, Outstanding Ending"&gt;2,426,725&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zEopSoyFCzE8" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Grant Date Fair Value, Outstanding Ending"&gt;7.06&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A7_zd6QdLoMZ3sj" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of December 31, 2022, there was $&lt;span id="xdx_900_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_iI_pn5n6_c20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zjXQepSdwIS3" title="Unrecognized stock-based compensation"&gt;14.7&lt;/span&gt; million of unrecognized stock-based compensation expense related to outstanding RSUs which is expected
to be recognized over a weighted-average period of &lt;span id="xdx_907_eus-gaap--EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_dtY_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zSL5pq6lAePj" title="Unrecognized stock-based compensation recognition period"&gt;2.2&lt;/span&gt; years.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Warrants&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has issued warrants related to financings, acquisitions and as compensation to third parties for services provided. The Company
estimates the fair value of issued warrants on the date of issuance as determined using a Black-Scholes pricing model. The Company amortizes
the fair value of issued warrants using a vesting schedule based on the terms and conditions of each warrant if granted for services.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_891_eus-gaap--ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock_znvjaERswV0h" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table summarizes warrant activity during the years ended December 31, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B5_zLyr3BCph05c" style="display: none"&gt;Schedule of Warrant Activity&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Number of Warrants&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Weighted Average Exercise Price&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Weighted Average Fair Value&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Weighted Average Remaining Contractual Life (Years)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 44%"&gt;Outstanding at December 31, 2020&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iS_c20210101__20211231_z1UryfnyDDHe" style="width: 10%; text-align: right" title="Number of Warrants Outstanding, Beginning"&gt;70,000&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_980_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zaIJa6UuoTC3" style="width: 10%; text-align: right" title="Weighted Average Exercise Price, Beginning"&gt;1.83&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_iS_pid_c20210101__20211231_zYf1Ny4dm4R" style="width: 10%; text-align: right" title="Weighted Average fair value, Beginning"&gt;5.21&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;&lt;span id="xdx_90E_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1_dtY_c20210101__20211231_zlUOD9z4uvy8" title="Weighted-average Remaining Contractual Life (Years) Outstanding"&gt;3.3&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_c20210101__20211231_zTriLyHQRKJ6" style="text-align: right" title="Number of Warrants Outstanding, Granted"&gt;456,281&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zt5kJf6iG9H6" style="text-align: right" title="Weighted Average Exercise Price, Granted"&gt;9.13&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zOVk1LlTH5Q4" style="text-align: right" title="Weighted Average Fair Value, Granted"&gt;3.83&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Expired&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations_iN_di_c20210101__20211231_zKCoV4BNwDWk" style="text-align: right" title="Number of Warrants Outstanding, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1358"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zA9x2zWsaZY6" style="text-align: right" title="Weighted Average Exercise Price, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1360"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zoN2jHgEnoOa" style="text-align: right" title="Weighted Average Fair Value, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1362"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Forfeited/Cancelled&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures_c20210101__20211231_zzD4fMIdEfud" style="text-align: right" title="Number of Warrants Outstanding, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1364"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zATzHGCLpXYd" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1366"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_pid_c20210101__20211231_z6w7ir4SrMke" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1368"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;Exercised&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_iN_di_c20210101__20211231_zaQ7Z4fRw3w1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Warrants Outstanding, Exercised"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1370"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zL6mmTDP5Rvd" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1372"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zMoVbjvpY4Cl" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1374"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Outstanding at December 31, 2021&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iS_c20220101__20221231_z4LNwiJ8Hlrh" style="text-align: right" title="Number of Warrants Outstanding, Beginning"&gt;526,281&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98A_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20220101__20221231_zTlAoB4JXGkj" style="text-align: right" title="Weighted Average Exercise Price, Beginning"&gt;8.15&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_iS_pid_c20220101__20221231_z3UOFMYcplia" style="text-align: right" title="Weighted Average fair value, Beginning"&gt;4.01&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span id="xdx_90F_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_dtY_c20210101__20211231_zAwyRqRKgR9b" title="Weighted-average Remaining Contractual Life (Years) Outstanding"&gt;4.7&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Issued for adjustments to contingent purchase consideration&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_ecustom--ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration_c20220101__20221231_zuDdzMzeQzbj" style="text-align: right" title="Number of Warrants Outstanding, Issued"&gt;8,719&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_ecustom--IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zsY7bVN439Fh" style="text-align: right" title="Weighted Average Exercise Price, Issued"&gt;9.13&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_ecustom--IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zSf2rOkqqgw8" style="text-align: right" title="Weighted Average Fair Value, Issued"&gt;1.88&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_c20220101__20221231_zXZwj3pdTic6" style="text-align: right" title="Number of Warrants Outstanding, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1390"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zucEClSrwDZd" style="text-align: right" title="Weighted Average Exercise Price, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1392"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zB5RSHYLSyZ1" style="text-align: right" title="Weighted Average Fair Value, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1394"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Expired&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations_iN_di_c20220101__20221231_z5GxYKmAJ3P8" style="text-align: right" title="Number of Warrants Outstanding, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1396"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zYiZHrKY7SM7" style="text-align: right" title="Weighted Average Exercise Price, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1398"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zOKkDIjzHOS5" style="text-align: right" title="Weighted Average Fair Value, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1400"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Forfeited/Cancelled&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures_c20220101__20221231_z2qdU3avusLj" style="text-align: right" title="Number of Warrants Outstanding, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1402"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zBNUiX9IRRs7" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1404"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zP1dJTyFXN07" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1406"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;Exercised&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_iN_di_c20220101__20221231_zWITLqpQoaUi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Warrants Outstanding, Exercised"&gt;(50,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_z0jqMG6hDjs2" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised"&gt;2.00&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zfQ85BjLHTO2" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised"&gt;1.22&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Outstanding at December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iE_c20220101__20221231_zoSCXGIeCqCi" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Warrants Outstanding, Ending"&gt;485,000&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_980_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice_iE_pid_c20220101__20221231_zdDYQh9v5Exl" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Exercise Price, Ending"&gt;8.81&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231_zZQVy6ukPVG1" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Fair Value, Ending"&gt;2.43&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: right"&gt;&lt;span id="xdx_909_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_dtY_c20220101__20221231_zt4bPrPcYrsk" title="Weighted-average Remaining Contractual Life (Years) Outstanding"&gt;4.0&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A2_zD857AmVDPJa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
intrinsic value of warrants exercised during the years ended December 31, 2022 and 2021 was $&lt;span id="xdx_903_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue_pn5n6_c20220101__20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_zKcuEj9Z3v95" title="Intrinsic value of warrants exercised"&gt;0.3&lt;/span&gt; million and $&lt;span id="xdx_907_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue_pn5n6_c20210101__20211231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_z6UKO9NLNo52" title="Intrinsic value of warrants exercised"&gt;0.0&lt;/span&gt; million, respectively.
The aggregate intrinsic value of outstanding warrants at December 31, 2022 was approximately $&lt;span id="xdx_901_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_iI_c20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_z4Hdz0hxQvMc" title="Aggregate intrinsic value of options outstanding"&gt;22,000&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_901_ecustom--ClassOfWarrantExercisable_iI_c20221231__us-gaap--StatementEquityComponentsAxis__us-gaap--WarrantMember_zxNAS9XntZP7" title="Warrants exercisable"&gt;20,000&lt;/span&gt;
warrants are exercisable at December 31, 2022. As discussed in Note 3 and Note 4, approximately &lt;span id="xdx_90D_eus-gaap--ClassOfWarrantOrRightOutstanding_iI_c20221231_zFp5qpa3U77l" title="Warrants purchase"&gt;456,000&lt;/span&gt; warrants to purchase shares of
the Company&#x2019;s common stock were issued in connection with the acquisition of ACI and IdMo. The ability to exercise the warrants
is contingent upon the achievement of certain development and revenue milestones on or before January 1, 2027. There was no unrecognized
stock-based compensation expense related to warrants.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;See
Note 5 for additional information regarding the fair value calculation of the warrants issued during the year ended December 31, 2021.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Stock
Issued for Services&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company has issued restricted stock to third parties for services provided. The grant date fair value of the restricted stock granted
is determined using the closing market price of the Company&#x2019;s common stock on the grant date with the associated compensation expense
amortized over the vesting period of the stock awards. The Company issued &lt;span id="xdx_901_eus-gaap--StockIssuedDuringPeriodSharesIssuedForServices_c20220101__20221231__srt--TitleOfIndividualAxis__custom--ThirdPartiesMember__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zuQq7uj4WyHf" title="Number of shares issued for services"&gt;0&lt;/span&gt; and &lt;span id="xdx_902_eus-gaap--StockIssuedDuringPeriodSharesIssuedForServices_c20210101__20211231__srt--TitleOfIndividualAxis__custom--ThirdPartiesMember__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockMember_zfmodYMO9Vqg" title="Number of shares issued for services"&gt;5,548&lt;/span&gt; shares of restricted stock for services during
the years ended December 31, 2022 and 2021, respectively, and there was no unrecognized stock-based compensation expense related to restricted
stock issued.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Stock-Based
Compensation Expense&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_891_eus-gaap--ScheduleOfShareBasedCompensationActivityTableTextBlock_zs6xlJlFwo7b" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company recognized stock-based compensation expense related to the types of awards discussed above as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BF_zXucSKiIchDl" style="display: none"&gt;Schedule of Recognized
Stock-based Compensation Expense&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20220101__20221231_zVCYSlFIIuG7" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20210101__20211231_zpsBsMggoHH1" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Years Ended December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--EmployeeStockOptionMember_zBxGRGPK80W2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; padding-left: 0pt"&gt;Options&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;78,115&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;292,754&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zjYcvU2Apzqj" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Restricted stock units&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;7,465,108&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,164,750&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--StockCompensationPlanMember_zHKzJbSWcZ49" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 0pt"&gt;Stock&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1444"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;51,900&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--AllocatedShareBasedCompensationExpense_zCqX0PaJtA7a" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Total stock-based compensation expense&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;7,543,223&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;5,509,404&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A0_z7uQNSaBqP8" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="AsOf2022-08-31_custom_TwoThousandFifteenLongTermIncentivePlanMember"
      decimals="INF"
      unitRef="Shares">12000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="AsOf2022-12-31_custom_TwoThousandFifteenLongTermIncentivePlanMember"
      decimals="INF"
      unitRef="Shares">6210790</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_89D_eus-gaap--ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_zU7Jdw4RcIo6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table summarizes option activity during the years ended December 31, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B7_zUfDgN8BJuNc" style="display: none"&gt;Schedule of Option Activity&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Number of Options&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Weighted Average Exercise Price&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Weighted Average Fair Value&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Weighted Average Remaining Contractual Life (Years)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 44%"&gt;Outstanding at December 31, 2020&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_c20210101__20211231_zZ8tWKvxHUo1" style="width: 10%; text-align: right" title="Number of Options Outstanding, Beginning"&gt;1,300,588&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zYlYqcyPL3vj" style="width: 10%; text-align: right" title="Weighted Average Exercise Price Outstanding, Beginning"&gt;2.44&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20210101__20211231_ziwNIJ8YdwV8" style="width: 10%; text-align: right" title="Weighted Average Fair Value Outstanding, Beginning"&gt;1.24&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_c20210101__20211231_ztgppmJTgss7" style="text-align: right" title="Number of Options Outstanding, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1222"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zgPhkaRRZ2Nf" style="text-align: right" title="Weighted Average Exercise Price, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1224"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20210101__20211231_zqclO0wK9Vm8" style="text-align: right" title="Weighted Average Fair Value, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1226"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Expired&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_c20210101__20211231_zYdtBO0NMSr3" style="text-align: right" title="Number of Options Outstanding, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1228"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_c20210101__20211231_zU5MuRoAul8d" style="text-align: right" title="Weighted Average Exercise Price, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1230"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_c20210101__20211231_z8aAk9CDvFoh" style="text-align: right" title="Weighted Average Fair Value, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1232"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Forfeited/Cancelled&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_c20210101__20211231_zu1AG2fNXBD4" style="text-align: right" title="Number of Options Outstanding, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1234"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_c20210101__20211231_zgjwcSQcTQ95" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1236"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_c20210101__20211231_zwKulepzb3gg" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1238"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;Exercised&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_di_c20210101__20211231_z6fnIuxBWCek" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Options Outstanding, Exercised"&gt;(189,225&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zugS8rkljjsj" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised"&gt;2.38&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised_pid_c20210101__20211231_zkJOrwsIEpab" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised"&gt;1.12&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Outstanding at December 31, 2021&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iS_c20220101__20221231_z9wxyPHMMC1" style="text-align: right" title="Number of Options Outstanding, Beginning"&gt;1,111,363&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20220101__20221231_zk2AcgXgmtJ3" style="text-align: right" title="Weighted Average Exercise Price Outstanding, Beginning"&gt;2.12&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20220101__20221231_zjInKmA0dMTe" style="text-align: right" title="Weighted Average Fair Value Outstanding, Beginning"&gt;1.31&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_c20220101__20221231_z5FBgPgVdjsh" style="text-align: right" title="Number of Options Outstanding, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1252"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zodQd860ouGg" style="text-align: right" title="Weighted Average Exercise Price, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1254"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_c20220101__20221231_zJUkPQL4NJwh" style="text-align: right" title="Weighted Average Fair Value, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1256"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Expired&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_c20220101__20221231_zhFFAtW5zTae" style="text-align: right" title="Number of Options Outstanding, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1258"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_c20220101__20221231_zjPS2hiTgCh6" style="text-align: right" title="Weighted Average Exercise Price, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1260"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue_c20220101__20221231_zCqNK3wWDpXh" style="text-align: right" title="Weighted Average Fair Value, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1262"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Forfeited/Cancelled&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_c20220101__20221231_zHUUaMJpCdYh" style="text-align: right" title="Number of Options Outstanding, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1264"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_c20220101__20221231_zRUk3W6hhVI8" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1266"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue_c20220101__20221231_zUyrkgvRmw2a" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1268"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;Exercised&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--StockIssuedDuringPeriodSharesStockOptionsExercised_iN_di_c20220101__20221231_zKHpqEMoJre4" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Options Outstanding, Exercised"&gt;(70,791&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zXw1rlKCHEfe" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised"&gt;1.10&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised_pid_c20220101__20221231_zEeDOOsIJpUi" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised"&gt;0.51&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Outstanding at December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_iE_c20220101__20221231_ztBpzDGj1KIb" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Options Outstanding, Ending"&gt;1,040,572&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_iE_pid_c20220101__20221231_zM7nlYIox1r7" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Exercise Price Outstanding, Ending"&gt;2.19&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231_zh6Xy9HXO3h7" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Fair Value Outstanding, Ending"&gt;1.37&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: right"&gt;&lt;span id="xdx_902_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm_dtY_c20220101__20221231_zZjhpbzX2xo7" title="Weighted-average Remaining Contractual Life (years) Outstanding, Ending"&gt;5.88&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Exercisable at December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_iE_c20220101__20221231_zfD15avwOGL1" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Options Exercisable Ending"&gt;1,040,572&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_iE_pid_c20220101__20221231_z62yJHkW9Ii9" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Exercise Price, Exercisable Ending"&gt;2.19&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_981_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable_iE_pid_c20220101__20221231_zicDaWEAxMB9" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Fair Value, Exercisable Ending"&gt;1.37&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: right"&gt;&lt;span id="xdx_906_eus-gaap--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_dtY_c20220101__20221231_zLgkXNayJ8n7" title="Weighted-average Remaining Contractual Life (years), Exercisable Ending"&gt;5.88&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="AsOf2020-12-31" decimals="INF" unitRef="Shares">1300588</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="AsOf2020-12-31"
      decimals="INF"
      unitRef="USDPShares">2.44</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="AsOf2020-12-31"
      decimals="INF"
      unitRef="USDPShares">1.24</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Shares">189225</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">2.38</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">1.12</CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">1111363</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="AsOf2021-12-31"
      decimals="INF"
      unitRef="USDPShares">2.12</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="AsOf2021-12-31"
      decimals="INF"
      unitRef="USDPShares">1.31</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">70791</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">1.10</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">0.51</CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">1040572</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="AsOf2022-12-31"
      decimals="INF"
      unitRef="USDPShares">2.19</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="AsOf2022-12-31"
      decimals="INF"
      unitRef="USDPShares">1.37</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm contextRef="From2022-01-01to2022-12-31">P5Y10M17D</CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">1040572</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="AsOf2022-12-31"
      decimals="INF"
      unitRef="USDPShares">2.19</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable
      contextRef="AsOf2022-12-31"
      decimals="INF"
      unitRef="USDPShares">1.37</CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 contextRef="From2022-01-01to2022-12-31">P5Y10M17D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="From2022-01-012022-12-31_custom_StockOptionsMember"
      decimals="-5"
      unitRef="USD">400000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="From2021-01-012021-12-31_custom_StockOptionsMember"
      decimals="-5"
      unitRef="USD">1300000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="AsOf2022-12-31_custom_StockOptionsMember"
      decimals="-5"
      unitRef="USD">800000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="AsOf2021-12-31_custom_StockOptionsMember"
      decimals="-5"
      unitRef="USD">7600000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_894_eus-gaap--ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_zUCHLGJY8Ayh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
grant date fair value of RSUs granted is determined using the closing market price of the Company&#x2019;s common stock on the grant date
with the associated compensation expense amortized over the vesting period of the awards. The following table sets forth the outstanding
RSUs and related activity for the years ended December 31, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B4_zaWAWQdBhK0d" style="display: none"&gt;Schedule of Outstanding Restricted Stock Units and Related Activity&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Number of RSUs&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Weighted Average Grant Date Fair Value&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 60%"&gt;Unvested at December 31, 2020&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iS_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zAcGCtZdl6K4" style="width: 16%; text-align: right" title="Number of Restricted Stock Units, Outstanding Beginning"&gt;522,500&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zfaraZnqnNIe" style="width: 16%; text-align: right" title="Weighted Average Grant Date Fair Value, Outstanding Beginning"&gt;10.49&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zyJeREGNgYUd" style="text-align: right" title="Number of Restricted Stock Units, Granted"&gt;1,217,500&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zdRW3eOeTJc6" style="text-align: right" title="Weighted Average Grant Date Fair Value, Granted"&gt;9.76&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Vested&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_iN_di_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zWGnePFfQHc5" style="text-align: right" title="Number of Restricted Stock Units, Vested"&gt;(438,502&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zVA8TI2EtO67" style="text-align: right" title="Weighted Average Grant Date Fair Value, Vested"&gt;10.10&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;Forfeited/Cancelled&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_iN_di_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zWPzKyhi0tfg" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Restricted Stock Units, Forfeited/Cancelled"&gt;(34,083&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_pid_c20210101__20211231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z2vLdz6kWfQi" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Grant Date Fair Value, Forfeited/Cancelled"&gt;9.91&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td&gt;Unvested at December 31, 2021&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iS_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zNfdlgokbHU6" style="text-align: right" title="Number of Restricted Stock Units, Outstanding Beginning"&gt;1,267,415&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iS_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z2qQgf9Zm1U7" style="text-align: right" title="Weighted Average Grant Date Fair Value, Outstanding Beginning"&gt;9.94&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z7uz8Xx1gkqf" style="text-align: right" title="Number of Restricted Stock Units, Granted"&gt;1,925,476&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z0SjFPXtRXh4" style="text-align: right" title="Weighted Average Grant Date Fair Value, Granted"&gt;5.66&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Vested&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_iN_di_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_z3nQ9tx0OeBe" style="text-align: right" title="Number of Restricted Stock Units, Vested"&gt;(725,166&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zjFyOyYUs0Y2" style="text-align: right" title="Weighted Average Grant Date Fair Value, Vested"&gt;8.66&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;Forfeited/Cancelled&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_iN_di_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zwsvr7Az7XU2" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Restricted Stock Units, Forfeited/Cancelled"&gt;(41,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zhWA30WQpcU8" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Grant Date Fair Value, Forfeited/Cancelled"&gt;8.31&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Unvested at December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_iE_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zGAPwCFupTf9" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Restricted Stock Units, Outstanding Ending"&gt;2,426,725&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231__us-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zEopSoyFCzE8" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Grant Date Fair Value, Outstanding Ending"&gt;7.06&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="AsOf2020-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      unitRef="Shares">522500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="AsOf2020-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      unitRef="USDPShares">10.49</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      unitRef="Shares">1217500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      unitRef="USDPShares">9.76</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      unitRef="Shares">438502</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      unitRef="USDPShares">10.10</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      unitRef="Shares">34083</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      unitRef="USDPShares">9.91</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="AsOf2021-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      unitRef="Shares">1267415</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="AsOf2021-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      unitRef="USDPShares">9.94</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750"
      decimals="INF"
      unitRef="Shares">1925476</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750"
      decimals="INF"
      unitRef="USDPShares">5.66</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750"
      decimals="INF"
      unitRef="Shares">725166</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750"
      decimals="INF"
      unitRef="USDPShares">8.66</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750"
      decimals="INF"
      unitRef="Shares">41000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750"
      decimals="INF"
      unitRef="USDPShares">8.31</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="AsOf2022-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      unitRef="Shares">2426725</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="AsOf2022-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      unitRef="USDPShares">7.06</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="AsOf2022-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="-5"
      unitRef="USD">14700000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750">P2Y2M12D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_891_eus-gaap--ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock_znvjaERswV0h" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
following table summarizes warrant activity during the years ended December 31, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B5_zLyr3BCph05c" style="display: none"&gt;Schedule of Warrant Activity&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Number of Warrants&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Weighted Average Exercise Price&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Weighted Average Fair Value&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Weighted Average Remaining Contractual Life (Years)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 44%"&gt;Outstanding at December 31, 2020&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iS_c20210101__20211231_z1UryfnyDDHe" style="width: 10%; text-align: right" title="Number of Warrants Outstanding, Beginning"&gt;70,000&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_980_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20210101__20211231_zaIJa6UuoTC3" style="width: 10%; text-align: right" title="Weighted Average Exercise Price, Beginning"&gt;1.83&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98D_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_iS_pid_c20210101__20211231_zYf1Ny4dm4R" style="width: 10%; text-align: right" title="Weighted Average fair value, Beginning"&gt;5.21&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 10%; text-align: right"&gt;&lt;span id="xdx_90E_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1_dtY_c20210101__20211231_zlUOD9z4uvy8" title="Weighted-average Remaining Contractual Life (Years) Outstanding"&gt;3.3&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_c20210101__20211231_zTriLyHQRKJ6" style="text-align: right" title="Number of Warrants Outstanding, Granted"&gt;456,281&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zt5kJf6iG9H6" style="text-align: right" title="Weighted Average Exercise Price, Granted"&gt;9.13&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zOVk1LlTH5Q4" style="text-align: right" title="Weighted Average Fair Value, Granted"&gt;3.83&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Expired&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations_iN_di_c20210101__20211231_zKCoV4BNwDWk" style="text-align: right" title="Number of Warrants Outstanding, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1358"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_984_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zA9x2zWsaZY6" style="text-align: right" title="Weighted Average Exercise Price, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1360"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zoN2jHgEnoOa" style="text-align: right" title="Weighted Average Fair Value, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1362"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Forfeited/Cancelled&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures_c20210101__20211231_zzD4fMIdEfud" style="text-align: right" title="Number of Warrants Outstanding, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1364"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zATzHGCLpXYd" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1366"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98A_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_pid_c20210101__20211231_z6w7ir4SrMke" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1368"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;Exercised&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_iN_di_c20210101__20211231_zaQ7Z4fRw3w1" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Warrants Outstanding, Exercised"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1370"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20210101__20211231_zL6mmTDP5Rvd" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1372"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_983_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_pid_c20210101__20211231_zMoVbjvpY4Cl" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1374"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td&gt;Outstanding at December 31, 2021&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iS_c20220101__20221231_z4LNwiJ8Hlrh" style="text-align: right" title="Number of Warrants Outstanding, Beginning"&gt;526,281&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98A_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice_iS_pid_c20220101__20221231_zTlAoB4JXGkj" style="text-align: right" title="Weighted Average Exercise Price, Beginning"&gt;8.15&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_989_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue_iS_pid_c20220101__20221231_z3UOFMYcplia" style="text-align: right" title="Weighted Average fair value, Beginning"&gt;4.01&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span id="xdx_90F_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_dtY_c20210101__20211231_zAwyRqRKgR9b" title="Weighted-average Remaining Contractual Life (Years) Outstanding"&gt;4.7&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 10pt"&gt;Issued for adjustments to contingent purchase consideration&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_ecustom--ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration_c20220101__20221231_zuDdzMzeQzbj" style="text-align: right" title="Number of Warrants Outstanding, Issued"&gt;8,719&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_989_ecustom--IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zsY7bVN439Fh" style="text-align: right" title="Weighted Average Exercise Price, Issued"&gt;9.13&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_ecustom--IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zSf2rOkqqgw8" style="text-align: right" title="Weighted Average Fair Value, Issued"&gt;1.88&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Granted&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98D_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_c20220101__20221231_zXZwj3pdTic6" style="text-align: right" title="Number of Warrants Outstanding, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1390"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zucEClSrwDZd" style="text-align: right" title="Weighted Average Exercise Price, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1392"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zB5RSHYLSyZ1" style="text-align: right" title="Weighted Average Fair Value, Granted"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1394"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 10pt"&gt;Expired&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations_iN_di_c20220101__20221231_z5GxYKmAJ3P8" style="text-align: right" title="Number of Warrants Outstanding, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1396"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zYiZHrKY7SM7" style="text-align: right" title="Weighted Average Exercise Price, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1398"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zOKkDIjzHOS5" style="text-align: right" title="Weighted Average Fair Value, Expired"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1400"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-left: 10pt"&gt;Forfeited/Cancelled&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures_c20220101__20221231_z2qdU3avusLj" style="text-align: right" title="Number of Warrants Outstanding, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1402"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_982_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_zBNUiX9IRRs7" style="text-align: right" title="Weighted Average Exercise Price, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1404"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_987_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zP1dJTyFXN07" style="text-align: right" title="Weighted Average Fair Value, Forfeited/Cancelled"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1406"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 10pt"&gt;Exercised&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_iN_di_c20220101__20221231_zWITLqpQoaUi" style="border-bottom: Black 1.5pt solid; text-align: right" title="Number of Warrants Outstanding, Exercised"&gt;(50,000&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_ecustom--ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice_pid_c20220101__20221231_z0jqMG6hDjs2" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Exercise Price, Exercised"&gt;2.00&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue_pid_c20220101__20221231_zfQ85BjLHTO2" style="padding-bottom: 1.5pt; text-align: right" title="Weighted Average Fair Value, Exercised"&gt;1.22&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 2.5pt"&gt;Outstanding at December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_iE_c20220101__20221231_zoSCXGIeCqCi" style="border-bottom: Black 2.5pt double; text-align: right" title="Number of Warrants Outstanding, Ending"&gt;485,000&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_980_ecustom--ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice_iE_pid_c20220101__20221231_zdDYQh9v5Exl" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Exercise Price, Ending"&gt;8.81&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_988_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue_iE_pid_c20220101__20221231_zZQVy6ukPVG1" style="padding-bottom: 2.5pt; text-align: right" title="Weighted Average Fair Value, Ending"&gt;2.43&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: right"&gt;&lt;span id="xdx_909_ecustom--SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3_dtY_c20220101__20221231_zt4bPrPcYrsk" title="Weighted-average Remaining Contractual Life (Years) Outstanding"&gt;4.0&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber contextRef="AsOf2020-12-31" decimals="INF" unitRef="Shares">70000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice
      contextRef="AsOf2020-12-31"
      decimals="INF"
      unitRef="USDPShares">1.83</CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice>
    <CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue
      contextRef="AsOf2020-12-31"
      decimals="INF"
      unitRef="USDPShares">5.21</CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue>
    <CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1 contextRef="From2021-01-012021-12-31">P3Y3M18D</CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Shares">456281</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">9.13</CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice>
    <CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="USDPShares">3.83</CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">526281</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice
      contextRef="AsOf2021-12-31"
      decimals="INF"
      unitRef="USDPShares">8.15</CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice>
    <CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue
      contextRef="AsOf2021-12-31"
      decimals="INF"
      unitRef="USDPShares">4.01</CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue>
    <CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3 contextRef="From2021-01-012021-12-31">P4Y8M12D</CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3>
    <CODX:ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">8719</CODX:ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration>
    <CODX:IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">9.13</CODX:IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice>
    <CODX:IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">1.88</CODX:IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">50000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised>
    <CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">2.00</CODX:ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="USDPShares">1.22</CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">485000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice
      contextRef="AsOf2022-12-31"
      decimals="INF"
      unitRef="USDPShares">8.81</CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice>
    <CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue
      contextRef="AsOf2022-12-31"
      decimals="INF"
      unitRef="USDPShares">2.43</CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue>
    <CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3 contextRef="From2022-01-01to2022-12-31">P4Y</CODX:SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3>
    <CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue
      contextRef="From2022-01-012022-12-31_us-gaap_WarrantMember"
      decimals="-5"
      unitRef="USD">300000</CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue>
    <CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue
      contextRef="From2021-01-012021-12-31_us-gaap_WarrantMember"
      decimals="-5"
      unitRef="USD">0.0</CODX:ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="AsOf2022-12-31_us-gaap_WarrantMember"
      decimals="0"
      unitRef="USD">22000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <CODX:ClassOfWarrantExercisable
      contextRef="AsOf2022-12-31_us-gaap_WarrantMember"
      decimals="INF"
      unitRef="Shares">20000</CODX:ClassOfWarrantExercisable>
    <us-gaap:ClassOfWarrantOrRightOutstanding contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">456000</us-gaap:ClassOfWarrantOrRightOutstanding>
    <us-gaap:StockIssuedDuringPeriodSharesIssuedForServices
      contextRef="From2022-01-012022-12-31_custom_ThirdPartiesMember_us-gaap_RestrictedStockMember"
      decimals="INF"
      unitRef="Shares">0</us-gaap:StockIssuedDuringPeriodSharesIssuedForServices>
    <us-gaap:StockIssuedDuringPeriodSharesIssuedForServices
      contextRef="From2021-01-012021-12-31_custom_ThirdPartiesMember_us-gaap_RestrictedStockMember"
      decimals="INF"
      unitRef="Shares">5548</us-gaap:StockIssuedDuringPeriodSharesIssuedForServices>
    <us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_891_eus-gaap--ScheduleOfShareBasedCompensationActivityTableTextBlock_zs6xlJlFwo7b" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company recognized stock-based compensation expense related to the types of awards discussed above as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BF_zXucSKiIchDl" style="display: none"&gt;Schedule of Recognized
Stock-based Compensation Expense&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20220101__20221231_zVCYSlFIIuG7" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_499_20210101__20211231_zpsBsMggoHH1" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Years Ended December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--EmployeeStockOptionMember_zBxGRGPK80W2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; padding-left: 0pt"&gt;Options&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;78,115&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;292,754&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--RestrictedStockUnitsRSUMember_zjYcvU2Apzqj" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Restricted stock units&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;7,465,108&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;5,164,750&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--AllocatedShareBasedCompensationExpense_hus-gaap--AwardTypeAxis__us-gaap--StockCompensationPlanMember_zHKzJbSWcZ49" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 0pt"&gt;Stock&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1444"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;51,900&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--AllocatedShareBasedCompensationExpense_zCqX0PaJtA7a" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Total stock-based compensation expense&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;7,543,223&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;5,509,404&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="From2022-01-012022-12-31_us-gaap_EmployeeStockOptionMember272309781"
      decimals="0"
      unitRef="USD">78115</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="From2021-01-012021-12-31_us-gaap_EmployeeStockOptionMember"
      decimals="0"
      unitRef="USD">292754</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="From2022-01-012022-12-31_us-gaap_RestrictedStockUnitsRSUMember272308750"
      decimals="0"
      unitRef="USD">7465108</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="From2021-01-012021-12-31_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="0"
      unitRef="USD">5164750</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="From2021-01-012021-12-31_us-gaap_StockCompensationPlanMember"
      decimals="0"
      unitRef="USD">51900</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">7543223</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">5509404</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_801_eus-gaap--IncomeTaxDisclosureTextBlock_z5M2F2Ur3Rlg" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
12 &#x2013; &lt;span id="xdx_827_zB3eqQ8LtrBf"&gt;Income Taxes&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89B_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_zKoRoXiLLDWe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
components of the provision for income taxes consists of the following for the years ended December 31, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BE_zTRMQlv4Nzha" style="display: none"&gt;Schedule
of Components Income Tax Provision&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20220101__20221231_zMfuosEX12H9" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49B_20210101__20211231_zXrSkdX7bf1a" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Year Ended December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_iB_zItKkEmAOVHf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 0pt"&gt;Current:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--CurrentFederalTaxExpenseBenefit_i01_maCFSALzO40_zglWyXf1pJHf" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 64%; text-indent: 10pt; padding-left: 0pt"&gt;Federal&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;563,821&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;6,092,730&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_i01_maCFSALzO40_z3AACDdV9osl" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;State&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(266,248&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;886,173&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--CurrentFederalStateAndLocalTaxExpenseBenefit_i01T_mtCFSALzO40_maITEBzvit_zfelvOywAXs2" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Total current&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;297,573&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;6,978,903&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_iB_z1ZXQed8MgS4" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 0pt"&gt;Deferred:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--DeferredFederalIncomeTaxExpenseBenefit_i01_maDFSALzrPD_zphTuVY7To89" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-indent: 10pt; padding-left: 0pt"&gt;Federal&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(3,945,090&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,394,686&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_i01_maDFSALzrPD_zBtTtG9NtUzl" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;State&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(961,468&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;603,642&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--DeferredFederalStateAndLocalTaxExpenseBenefit_i01T_mtDFSALzrPD_maITEBzvit_zbkM8D9mxFNl" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Total deferred&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(4,906,558&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,998,328&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--IncomeTaxExpenseBenefit_iT_mtITEBzvit_zGexWbgHqUKa" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt"&gt;Total income tax (benefit) expense&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(4,608,985&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;8,977,231&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A5_zEu5SrToj2Jf" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89F_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zvGIDloIP8f2" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;A
reconciliation of income tax expense at the statutory federal income tax rate and income taxes as reflected in the financial statements
is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B0_z1pUq1ZZtIE5" style="display: none"&gt;Schedule
of Benefit from Income Taxes and Effective Tax Rates&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20220101__20221231_zo6S7rTZAeHc" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49B_20210101__20211231_zDtONAgXNDDb" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Year Ended December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_dp_uPure_zhCcAQmNpf4f" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left; padding-left: 0pt"&gt;Federal income tax expense at statutory rate&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;21.0&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;%&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;21.0&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_dp_uPure_zMkOhSV2TCFk" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;State income tax expense, net of federal tax benefit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;4.8&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3.9&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract_iB_zpxYfuAK1Yuf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Permanent differences:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_ecustom--EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction_i01_dp_uPure_zltzT5wCqclg" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;- Foreign derived intangible income deduction&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1.4&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;-3.5&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent_i01_dp_uPure_z43W7ezcyEC2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;- Stock based compensation&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;-3.6&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.2&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_ecustom--EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement_i01_dp_uPure_zq1YzxyBEGM8" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;- Contingent consideration remeasurement&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;8.8&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.0&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_ecustom--EffectiveIncomeTaxRateReconciliationGoodwillImpairment_i01_dp_uPure_zD3imPA8Za5j" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;- Goodwill impairment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;-17.1&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.0&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_i01_dp_uPure_zOmNw1RC5HSg" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;- Other permanent differences&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;-0.6&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.3&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment_iN_dpi_uPure_z1k6PHrC4Jlj" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Research and development credits&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;11.1&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;-2.6&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_ecustom--EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance_dp_uPure_znriT6IQMKBk" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Change in uncertain tax positions&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;-2.1&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1.4&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_dp_uPure_zjJrPFNgEeSj" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Change in valuation allowance&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.0&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.0&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherAdjustments_dp_uPure_zS8YrT1MUdQ" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 0pt"&gt;Other&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;0.8&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;%&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;-1.0&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_dp_uPure_zXuqfck6KiV6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt"&gt;Effective income tax rate&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;24.5&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;%&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;19.7&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A4_znpxvfXctR04" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"/&gt;&lt;/p&gt;

&lt;p id="xdx_896_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_zAB1TlhM3wk3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Net
deferred tax liabilities consist of the following components as of December 31, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BA_z7Dfq5a2jRta" style="display: none"&gt;Schedule
of Deferred Tax Assets&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_493_20221231_z2gSbIutjuYg" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_497_20211231_zz3TgbMP9qFf" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--DeferredTaxAssetsGrossAbstract_iB_z1N2A1soq1N6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Deferred tax assets:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_i01I_maDTAGzwm0_zASVEMrzwZp" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 64%; text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Accrued liabilities&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;98,141&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1528"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_i01I_maDTAGzwm0_zLa8qYxc8Ky8" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Reserves and allowances&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;765,004&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;166,050&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits_i01I_maDTAGzwm0_zrLS0S8rsvZg" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Deferred compensation&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;566,076&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;393,871&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--DeferredTaxAssetsInProcessResearchAndDevelopment_i01I_maDTAGzwm0_zCKLBeVcGQyi" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Research and development credits&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,460,159&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1537"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_ecustom--DeferredTaxAssetsLeaseLiability_i01I_maDTAGzwm0_zpheh1OWtpu5" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Lease liability&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;85,899&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1540"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_ecustom--DeferredTaxAssetsUniformCapitalization_i01I_maDTAGzwm0_zH8nlHNsfK67" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt"&gt;UNICAP&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;168,936&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1543"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--DeferredTaxAssetsGross_i01TI_mtDTAGzwm0_maDTAOzex8_zvK9k46gnL36" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Total deferred tax assets&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;5,144,215&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;559,921&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--DeferredTaxLiabilitiesAbstract_iB_zEj7ajrmWG8j" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Deferred tax liabilities:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--DeferredTaxLiabilitiesPropertyPlantAndEquipment_i01NI_di_maDITLzLIF_zR2hg1rMK0D8" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Property and equipment, net&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(609,261&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(477,542&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_i01NI_di_maDITLzLIF_zwAuSyLfWLWi" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Intangibles, net&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(6,608,914&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(6,743,972&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--DeferredTaxLiabilitiesPrepaidExpenses_i01NI_di_maDITLzLIF_zs2ZvHpL9DQ7" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-indent: 20pt; padding-left: 0pt"&gt;Prepaids&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(156,053&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(560,093&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_ecustom--DeferredTaxLiabilitiesRightOfUseAsset_i01I_maDITLzLIF_zBYSAS3xGyOg" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Right of use asset&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(91,873&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1561"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--DeferredTaxLiabilitiesOtherComprehensiveIncome_i01NI_di_maDITLzLIF_zZ6iFpTVjfaa" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Other comprehensive income&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(96,101&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1564"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--DeferredTaxLiabilitiesOther_i01NI_di_maDITLzLIF_zIuQyMqsui3c" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt"&gt;Other&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1566"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(6,758&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--DeferredIncomeTaxLiabilities_i01NTI_di_mtDITLzLIF_msDTAOzex8_zPHFnstnzBP9" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Total deferred tax liabilities&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(7,562,202&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(7,788,365&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_ecustom--NetDeferredTaxLiabilities_i01I_mtDTAOzex8_maDTANzqQW_z268iDeeNNPd" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Net deferred tax (liabilities)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(2,417,987&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(7,228,444&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--DeferredTaxAssetsValuationAllowance_iI_msDTANzqQW_z6QCumMw7iTl" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Less valuation allowance&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1575"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1576"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_di_mtDTANzqQW_zskQxiyPiP5b" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt"&gt;Net deferred tax (liabilities)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(2,417,987&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(7,228,444&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A6_zVrLo5Ore0ba" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;At
December 31, 2022, the Company had &lt;span id="xdx_90D_eus-gaap--OperatingLossCarryforwards_iI_do_c20221231_zjZR6FDiifuj" title="Net operating loss carry-forwards"&gt;no&lt;/span&gt; federal net operating loss carryforwards and &lt;span id="xdx_90A_eus-gaap--DeferredTaxAssetsInProcessResearchAndDevelopment_iI_dxL_c20211231_zFrtTijyaVz1" title="Research and development credit carry forwards::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1583"&gt;no&lt;/span&gt;&lt;/span&gt; federal research and development credit carryforwards.
At December 31, 2022, the Company had &lt;span id="xdx_903_eus-gaap--DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal_iI_dxL_c20221231_zvNPH4W5Wzol" title="State net operating loss carryforwards::XDX::-"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1585"&gt;no&lt;/span&gt;&lt;/span&gt; state net operating loss carryforwards and $&lt;span id="xdx_90A_eus-gaap--DeferredTaxAssetsTaxCreditCarryforwards_iI_c20221231_z80NrwhkpAh8" title="State research and development credit carryforwards"&gt;288,292&lt;/span&gt; of state research and development credit
carryforwards. If unused, the state research credit carryforward will expire in 2036.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;ASC
Topic 740-10-05 requires that the impact of a tax position be recognized in the financial statements if that position is more likely
than not of being sustained on audit, based on the technical merits of the position. Our unrecognized tax benefit balances included $&lt;span id="xdx_907_eus-gaap--UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_iI_c20221231_zwGl7Rf3mAp3" title="Unrecognized tax benefits that would impact effective tax rate"&gt;1,469,577&lt;/span&gt;
at December 31, 2022 and $&lt;span id="xdx_904_eus-gaap--UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_iI_c20211231_ztuDLdwiFg39" title="Unrecognized tax benefits that would impact effective tax rate"&gt;1,067,853&lt;/span&gt; at December 31, 2021 of tax positions that, if recognized, would impact our effective tax rate. The
Company expects no material changes to the liability for unrecognized tax benefits in the next 12 months. Interest and penalties associated
with uncertain tax positions are recorded as a component of income tax expense. A reconciliation of the beginning and ending amount of
unrecognized benefits is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt; background-color: white"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_895_eus-gaap--ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_zrqHktq4Hxbc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B5_zTVlaz4tFVT9" style="display: none"&gt;Schedule
of Unrecognized Tax Benefits&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Unrecognized tax benefits at the beginning of the year&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--UnrecognizedTaxBenefits_iS_c20220101__20221231_zEsfTxOY0DAj" style="width: 14%; text-align: right" title="Unrecognized tax benefits at the beginning of the year"&gt;1,067,853&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--UnrecognizedTaxBenefits_iS_c20210101__20211231_zoVcKY5Nt9t9" style="width: 14%; text-align: right" title="Unrecognized tax benefits at the beginning of the year"&gt;447,831&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Gross increases - current year tax positions&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_c20220101__20221231_zksi0q1t2Svf" style="text-align: right" title="Gross increases- current year tax positions"&gt;1,045,590&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_c20210101__20211231_znCPLez0B4a2" style="text-align: right" title="Gross increases - current year tax positions"&gt;770,069&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Gross increases - prior year tax positions&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_c20220101__20221231_zNtX4s5UWUK3" style="text-align: right" title="Gross increases- prior year tax positions"&gt;34,035&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_c20210101__20211231_zamsyOPTI7vf" style="text-align: right" title="Gross increases - prior year tax positions"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1605"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Gross decreases - prior year tax positions&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_iN_di_c20220101__20221231_z0MvwCAHaza7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gross decreases - prior year tax positions"&gt;(677,901&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_iN_di_c20210101__20211231_zAREE8LQLtUa" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gross decreases- prior year tax positions"&gt;(150,047&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Unrecognized tax benefits at end of year&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--UnrecognizedTaxBenefits_iE_c20220101__20221231_zQcqtjFCvGwk" style="border-bottom: Black 2.5pt double; text-align: right" title="Unrecognized tax benefits at end of year"&gt;1,469,577&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--UnrecognizedTaxBenefits_iE_c20210101__20211231_zq46nvqtlKRf" style="border-bottom: Black 2.5pt double; text-align: right" title="Unrecognized tax benefits at end of year"&gt;1,067,853&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Interest and penalties in year-end balance&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued_iE_c20220101__20221231_zh2IVKFrFj76" style="border-bottom: Black 2.5pt double; text-align: right" title="Interest and penalties in year-end balance"&gt;34,035&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued_iE_c20210101__20211231_zfFsMs88rjX8" style="border-bottom: Black 2.5pt double; text-align: right" title="Interest and penalities in year- end balance"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1617"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A8_zPZ1TGdzNgei" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company is subject to taxation in the United States and other state jurisdictions. The tax years from December 31, 2019 through December
31, 2022 remain open to examination for federal income tax purposes and by the other major taxing jurisdictions to which the Company
is subject. The Company is not currently under examination by any taxing authority.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_89B_eus-gaap--ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_zKoRoXiLLDWe" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
components of the provision for income taxes consists of the following for the years ended December 31, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BE_zTRMQlv4Nzha" style="display: none"&gt;Schedule
of Components Income Tax Provision&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20220101__20221231_zMfuosEX12H9" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49B_20210101__20211231_zXrSkdX7bf1a" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Year Ended December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_iB_zItKkEmAOVHf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 0pt"&gt;Current:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--CurrentFederalTaxExpenseBenefit_i01_maCFSALzO40_zglWyXf1pJHf" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 64%; text-indent: 10pt; padding-left: 0pt"&gt;Federal&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;563,821&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;6,092,730&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--CurrentStateAndLocalTaxExpenseBenefit_i01_maCFSALzO40_z3AACDdV9osl" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;State&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(266,248&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;886,173&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--CurrentFederalStateAndLocalTaxExpenseBenefit_i01T_mtCFSALzO40_maITEBzvit_zfelvOywAXs2" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Total current&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;297,573&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;6,978,903&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_iB_z1ZXQed8MgS4" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 0pt"&gt;Deferred:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--DeferredFederalIncomeTaxExpenseBenefit_i01_maDFSALzrPD_zphTuVY7To89" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-indent: 10pt; padding-left: 0pt"&gt;Federal&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(3,945,090&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1,394,686&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--DeferredStateAndLocalIncomeTaxExpenseBenefit_i01_maDFSALzrPD_zBtTtG9NtUzl" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-indent: 10pt; padding-left: 0pt"&gt;State&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(961,468&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;603,642&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--DeferredFederalStateAndLocalTaxExpenseBenefit_i01T_mtDFSALzrPD_maITEBzvit_zbkM8D9mxFNl" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Total deferred&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(4,906,558&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;1,998,328&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--IncomeTaxExpenseBenefit_iT_mtITEBzvit_zGexWbgHqUKa" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt"&gt;Total income tax (benefit) expense&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(4,608,985&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;8,977,231&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">563821</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">6092730</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-266248</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">886173</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentFederalStateAndLocalTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">297573</us-gaap:CurrentFederalStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentFederalStateAndLocalTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">6978903</us-gaap:CurrentFederalStateAndLocalTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-3945090</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">1394686</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-961468</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">603642</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalStateAndLocalTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-4906558</us-gaap:DeferredFederalStateAndLocalTaxExpenseBenefit>
    <us-gaap:DeferredFederalStateAndLocalTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">1998328</us-gaap:DeferredFederalStateAndLocalTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">-4608985</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">8977231</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_89F_eus-gaap--ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_zvGIDloIP8f2" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;A
reconciliation of income tax expense at the statutory federal income tax rate and income taxes as reflected in the financial statements
is as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B0_z1pUq1ZZtIE5" style="display: none"&gt;Schedule
of Benefit from Income Taxes and Effective Tax Rates&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49C_20220101__20221231_zo6S7rTZAeHc" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_49B_20210101__20211231_zDtONAgXNDDb" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Year Ended December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_dp_uPure_zhCcAQmNpf4f" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left; padding-left: 0pt"&gt;Federal income tax expense at statutory rate&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;21.0&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;%&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;21.0&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_dp_uPure_zMkOhSV2TCFk" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;State income tax expense, net of federal tax benefit&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;4.8&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3.9&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract_iB_zpxYfuAK1Yuf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Permanent differences:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_ecustom--EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction_i01_dp_uPure_zltzT5wCqclg" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;- Foreign derived intangible income deduction&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1.4&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;-3.5&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent_i01_dp_uPure_z43W7ezcyEC2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;- Stock based compensation&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;-3.6&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.2&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_ecustom--EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement_i01_dp_uPure_zq1YzxyBEGM8" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;- Contingent consideration remeasurement&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;8.8&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.0&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_ecustom--EffectiveIncomeTaxRateReconciliationGoodwillImpairment_i01_dp_uPure_zD3imPA8Za5j" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;- Goodwill impairment&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;-17.1&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.0&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate_i01_dp_uPure_zOmNw1RC5HSg" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;- Other permanent differences&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;-0.6&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.3&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment_iN_dpi_uPure_z1k6PHrC4Jlj" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Research and development credits&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;11.1&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;-2.6&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_ecustom--EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance_dp_uPure_znriT6IQMKBk" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Change in uncertain tax positions&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;-2.1&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;1.4&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_dp_uPure_zjJrPFNgEeSj" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Change in valuation allowance&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.0&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;0.0&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherAdjustments_dp_uPure_zS8YrT1MUdQ" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 0pt"&gt;Other&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;0.8&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;%&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;-1.0&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent_dp_uPure_zXuqfck6KiV6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt"&gt;Effective income tax rate&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;24.5&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;%&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;19.7&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Pure">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Pure">0.048</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">0.039</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <CODX:EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Pure">0.014</CODX:EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction>
    <CODX:EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">-0.035</CODX:EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Pure">-0.036</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">0.002</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent>
    <CODX:EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Pure">0.088</CODX:EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement>
    <CODX:EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">0.000</CODX:EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement>
    <CODX:EffectiveIncomeTaxRateReconciliationGoodwillImpairment
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Pure">-0.171</CODX:EffectiveIncomeTaxRateReconciliationGoodwillImpairment>
    <CODX:EffectiveIncomeTaxRateReconciliationGoodwillImpairment
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">0.000</CODX:EffectiveIncomeTaxRateReconciliationGoodwillImpairment>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Pure">-0.006</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">0.003</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Pure">-0.111</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">0.026</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment>
    <CODX:EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Pure">-0.021</CODX:EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance>
    <CODX:EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">0.014</CODX:EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Pure">0.000</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">0.000</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Pure">0.008</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">-0.010</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Pure">0.245</us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent
      contextRef="From2021-01-012021-12-31"
      decimals="INF"
      unitRef="Pure">0.197</us-gaap:EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_896_eus-gaap--ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_zAB1TlhM3wk3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Net
deferred tax liabilities consist of the following components as of December 31, 2022 and 2021:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8BA_z7Dfq5a2jRta" style="display: none"&gt;Schedule
of Deferred Tax Assets&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="display: none; vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_493_20221231_z2gSbIutjuYg" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_497_20211231_zz3TgbMP9qFf" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--DeferredTaxAssetsGrossAbstract_iB_z1N2A1soq1N6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Deferred tax assets:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_401_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_i01I_maDTAGzwm0_zASVEMrzwZp" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 64%; text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Accrued liabilities&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;98,141&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 14%; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1528"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts_i01I_maDTAGzwm0_zLa8qYxc8Ky8" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Reserves and allowances&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;765,004&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;166,050&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits_i01I_maDTAGzwm0_zrLS0S8rsvZg" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Deferred compensation&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;566,076&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;393,871&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--DeferredTaxAssetsInProcessResearchAndDevelopment_i01I_maDTAGzwm0_zCKLBeVcGQyi" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Research and development credits&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;3,460,159&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1537"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_ecustom--DeferredTaxAssetsLeaseLiability_i01I_maDTAGzwm0_zpheh1OWtpu5" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Lease liability&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;85,899&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1540"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_ecustom--DeferredTaxAssetsUniformCapitalization_i01I_maDTAGzwm0_zH8nlHNsfK67" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt"&gt;UNICAP&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;168,936&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1543"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_408_eus-gaap--DeferredTaxAssetsGross_i01TI_mtDTAGzwm0_maDTAOzex8_zvK9k46gnL36" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Total deferred tax assets&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;5,144,215&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;559,921&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--DeferredTaxLiabilitiesAbstract_iB_zEj7ajrmWG8j" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Deferred tax liabilities:&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--DeferredTaxLiabilitiesPropertyPlantAndEquipment_i01NI_di_maDITLzLIF_zR2hg1rMK0D8" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Property and equipment, net&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(609,261&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(477,542&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_i01NI_di_maDITLzLIF_zwAuSyLfWLWi" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Intangibles, net&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(6,608,914&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(6,743,972&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--DeferredTaxLiabilitiesPrepaidExpenses_i01NI_di_maDITLzLIF_zs2ZvHpL9DQ7" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-indent: 20pt; padding-left: 0pt"&gt;Prepaids&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(156,053&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(560,093&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_ecustom--DeferredTaxLiabilitiesRightOfUseAsset_i01I_maDITLzLIF_zBYSAS3xGyOg" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Right of use asset&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(91,873&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1561"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--DeferredTaxLiabilitiesOtherComprehensiveIncome_i01NI_di_maDITLzLIF_zZ6iFpTVjfaa" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 20pt; padding-left: 0pt"&gt;Other comprehensive income&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(96,101&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1564"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--DeferredTaxLiabilitiesOther_i01NI_di_maDITLzLIF_zIuQyMqsui3c" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 1.5pt; text-indent: 20pt; padding-left: 0pt"&gt;Other&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1566"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(6,758&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40D_eus-gaap--DeferredIncomeTaxLiabilities_i01NTI_di_mtDITLzLIF_msDTAOzex8_zPHFnstnzBP9" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Total deferred tax liabilities&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(7,562,202&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;(7,788,365&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_ecustom--NetDeferredTaxLiabilities_i01I_mtDTAOzex8_maDTANzqQW_z268iDeeNNPd" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Net deferred tax (liabilities)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(2,417,987&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;(7,228,444&lt;/td&gt;&lt;td style="text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_400_eus-gaap--DeferredTaxAssetsValuationAllowance_iI_msDTANzqQW_z6QCumMw7iTl" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Less valuation allowance&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1575"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1576"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_407_eus-gaap--DeferredTaxAssetsLiabilitiesNet_iNI_di_mtDTANzqQW_zskQxiyPiP5b" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt; padding-left: 0pt"&gt;Net deferred tax (liabilities)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(2,417,987&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td style="border-bottom: Black 2.5pt double; text-align: right"&gt;(7,228,444&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">98141</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">765004</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">166050</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">566076</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">393871</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits>
    <us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">3460159</us-gaap:DeferredTaxAssetsInProcessResearchAndDevelopment>
    <CODX:DeferredTaxAssetsLeaseLiability contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">85899</CODX:DeferredTaxAssetsLeaseLiability>
    <CODX:DeferredTaxAssetsUniformCapitalization contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">168936</CODX:DeferredTaxAssetsUniformCapitalization>
    <us-gaap:DeferredTaxAssetsGross contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">5144215</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">559921</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">609261</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">477542</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">6608914</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">6743972</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesPrepaidExpenses contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">156053</us-gaap:DeferredTaxLiabilitiesPrepaidExpenses>
    <us-gaap:DeferredTaxLiabilitiesPrepaidExpenses contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">560093</us-gaap:DeferredTaxLiabilitiesPrepaidExpenses>
    <CODX:DeferredTaxLiabilitiesRightOfUseAsset contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">-91873</CODX:DeferredTaxLiabilitiesRightOfUseAsset>
    <us-gaap:DeferredTaxLiabilitiesOtherComprehensiveIncome contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">96101</us-gaap:DeferredTaxLiabilitiesOtherComprehensiveIncome>
    <us-gaap:DeferredTaxLiabilitiesOther contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">6758</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredIncomeTaxLiabilities contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">7562202</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">7788365</us-gaap:DeferredIncomeTaxLiabilities>
    <CODX:NetDeferredTaxLiabilities contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">-2417987</CODX:NetDeferredTaxLiabilities>
    <CODX:NetDeferredTaxLiabilities contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">-7228444</CODX:NetDeferredTaxLiabilities>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">2417987</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">7228444</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:OperatingLossCarryforwards contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">0</us-gaap:OperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwards contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">288292</us-gaap:DeferredTaxAssetsTaxCreditCarryforwards>
    <us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">1469577</us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate>
    <us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1067853</us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate>
    <us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_895_eus-gaap--ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_zrqHktq4Hxbc" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_8B5_zTVlaz4tFVT9" style="display: none"&gt;Schedule
of Unrecognized Tax Benefits&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="6" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td style="font-weight: bold; text-align: center"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;2021&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 64%; text-align: left"&gt;Unrecognized tax benefits at the beginning of the year&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_985_eus-gaap--UnrecognizedTaxBenefits_iS_c20220101__20221231_zEsfTxOY0DAj" style="width: 14%; text-align: right" title="Unrecognized tax benefits at the beginning of the year"&gt;1,067,853&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98E_eus-gaap--UnrecognizedTaxBenefits_iS_c20210101__20211231_zoVcKY5Nt9t9" style="width: 14%; text-align: right" title="Unrecognized tax benefits at the beginning of the year"&gt;447,831&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Gross increases - current year tax positions&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_c20220101__20221231_zksi0q1t2Svf" style="text-align: right" title="Gross increases- current year tax positions"&gt;1,045,590&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_c20210101__20211231_znCPLez0B4a2" style="text-align: right" title="Gross increases - current year tax positions"&gt;770,069&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Gross increases - prior year tax positions&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_c20220101__20221231_zNtX4s5UWUK3" style="text-align: right" title="Gross increases- prior year tax positions"&gt;34,035&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_981_eus-gaap--UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_c20210101__20211231_zamsyOPTI7vf" style="text-align: right" title="Gross increases - prior year tax positions"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1605"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Gross decreases - prior year tax positions&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98F_eus-gaap--UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_iN_di_c20220101__20221231_z0MvwCAHaza7" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gross decreases - prior year tax positions"&gt;(677,901&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_iN_di_c20210101__20211231_zAREE8LQLtUa" style="border-bottom: Black 1.5pt solid; text-align: right" title="Gross decreases- prior year tax positions"&gt;(150,047&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;)&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Unrecognized tax benefits at end of year&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_980_eus-gaap--UnrecognizedTaxBenefits_iE_c20220101__20221231_zQcqtjFCvGwk" style="border-bottom: Black 2.5pt double; text-align: right" title="Unrecognized tax benefits at end of year"&gt;1,469,577&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98B_eus-gaap--UnrecognizedTaxBenefits_iE_c20210101__20211231_zq46nvqtlKRf" style="border-bottom: Black 2.5pt double; text-align: right" title="Unrecognized tax benefits at end of year"&gt;1,067,853&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-bottom: 2.5pt"&gt;Interest and penalties in year-end balance&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued_iE_c20220101__20221231_zh2IVKFrFj76" style="border-bottom: Black 2.5pt double; text-align: right" title="Interest and penalties in year-end balance"&gt;34,035&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;$&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued_iE_c20210101__20211231_zfFsMs88rjX8" style="border-bottom: Black 2.5pt double; text-align: right" title="Interest and penalities in year- end balance"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1617"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock>
    <us-gaap:UnrecognizedTaxBenefits contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1067853</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits contextRef="AsOf2020-12-31" decimals="0" unitRef="USD">447831</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">1045590</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">770069</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">34035</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">677901</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="From2021-01-012021-12-31"
      decimals="0"
      unitRef="USD">150047</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefits contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">1469577</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits contextRef="AsOf2021-12-31" decimals="0" unitRef="USD">1067853</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">34035</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_804_eus-gaap--CommitmentsAndContingenciesDisclosureTextBlock_zYd4sQUQlrse" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
13 &#x2013; &lt;span id="xdx_820_zhvidlkbNctl"&gt;Commitments and Contingencies&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Lease
Obligations&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The
Company leases office space under a non-cancellable operating lease and leases cancellable with one month notice. The Company expenses
the cancelable leases in the period incurred in accordance with the practical expedient elected. As such, one lease makes up the entirety
of the right-of-use asset and lease liability disclosed.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89B_eus-gaap--LeaseCostTableTextBlock_zlQL63nnZNWh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;For
the year ended December 31, 2022, components of lease expense are summarized as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B5_z7huRpqAonJh" style="display: none"&gt;Schedule
of Lease Expense&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_494_20220101__20221231_zTcAfbvmNrI2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Year Ended December, 2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--OperatingLeaseCost_maLCz2lp_zMXzVg0SZvx9" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 76%; text-align: left"&gt;Operating lease costs&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 18%; text-align: right"&gt;346,349&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--ShortTermLeaseCost_maLCz2lp_zMjLJbrcEqcd" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Short-term lease costs&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;384,902&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--LeaseCost_iT_mtLCz2lp_zGCbsXJUdfU2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Total lease costs&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;731,251&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A6_zv8IPmTVrQba" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Short-term
lease costs under month-to-month lease agreements are paid to related parties.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_891_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_zSWWHFoYGwvk" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of December 31, 2022, the maturities of the Company&#x2019;s lease liabilities are as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BD_zq2nGaCFCop3" style="display: none"&gt;Schedule
of Maturities on Company Lease Liabilities&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_493_20221231_z4QbVlVKyTsa" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Year Ending&lt;br/&gt;
 December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_maLOLLPz8za_zycEIygeanf6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 78%; text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;2023&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 18%; text-align: right"&gt;303,059&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_maLOLLPz8za_zX6di43brZH4" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;2024&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;50,773&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_maLOLLPz8za_zGy967EVcyUc" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;2025&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1635"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFour_iI_maLOLLPz8za_zm8H47QkU1Y2" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;2026&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1637"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFive_iI_maLOLLPz8za_z7a4Mm5xQUte" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;2027&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1639"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_iI_maLOLLPz8za_zzK7zvgiQnw" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 0pt"&gt;Thereafter&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1641"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_mtLOLLPz8za_zwo0TqAU3Evf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Total lease payments&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;353,832&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iI_zb5o7ZqzxmL2" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Less: imputed interest&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;5,915&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--OperatingLeaseLiability_iI_zf1fF5vvsNHk" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Present value of operating lease liabilities&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;347,917&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--OperatingLeaseLiabilityCurrent_iI_z1WsKphfMc6f" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Less: current portion&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;297,209&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_zLHpE3gaIC77" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Long-term portion&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;50,708&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AF_zFxdQ6yQWrI3" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_89C_ecustom--ScheduleOfOperatingLeaseTableTextBlock_zMRwjQM566vb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Other
information related to operating leases was as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B7_zix7S5fGXOS5" style="display: none"&gt;Schedule
of Other Information Related to Operating Lease&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20220101__20221231_zEqQ9PdyNeo7" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt"&gt;Year Ended&lt;/p&gt;
                                                                                &lt;p style="margin-top: 0pt; margin-bottom: 0pt"&gt;December 31, 2022&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--OperatingLeasePayments_zoRrBGesqn98" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: left"&gt;Cash paid for operating leases included in operating cash flows&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;700,821&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Remaining lease term of operating leases&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90B_eus-gaap--OperatingLeaseWeightedAverageRemainingLeaseTerm1_iI_dtY_c20221231_zCNZF9oIpUY2" title="Remaining lease term of operating leases"&gt;1&lt;/span&gt; year &lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Discount rate of operating leases&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--OperatingLeaseWeightedAverageDiscountRatePercent_iI_pid_dp_uPure_c20221231_ziIXv7lI6Cui" style="text-align: right" title="Discount rate of operating leases"&gt;3.1&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8AC_z6JWzAgnjTNh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Litigation&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Liabilities
for loss contingencies arising from claims, assessments, litigation, fines, and penalties and other sources are recorded when it is probable
that a liability has been incurred and the amount can be reasonably estimated. Legal costs incurred in connection with loss contingencies
are expensed as incurred.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;The Company is a defendant in two class action claims and three derivative
actions claiming that the Company promulgated false and misleading press releases to increase the price of our stock to improperly
benefit the officers and directors of the Company. The plaintiffs demand compensatory damages sustained as a result of the Company&#x2019;s
alleged wrongdoing in an amount to be proven at trial. The Company believes these lawsuits are without merit and intends to defend the
cases vigorously. The Company is unable to estimate a range of loss, if any, that could result were there to be an adverse final decision
in these cases. As of the date of this report, the Company does not believe it is probable that these cases will result in an unfavorable
outcome; however, if an unfavorable outcome were to occur in these cases, it is possible that the impact could be material to the Company&#x2019;s
results of operations in the period(s) in which any such outcome becomes probable and estimable.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:LeaseCostTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_89B_eus-gaap--LeaseCostTableTextBlock_zlQL63nnZNWh" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;For
the year ended December 31, 2022, components of lease expense are summarized as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B5_z7huRpqAonJh" style="display: none"&gt;Schedule
of Lease Expense&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 70%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_494_20220101__20221231_zTcAfbvmNrI2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Year Ended December, 2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--OperatingLeaseCost_maLCz2lp_zMXzVg0SZvx9" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 76%; text-align: left"&gt;Operating lease costs&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 18%; text-align: right"&gt;346,349&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40E_eus-gaap--ShortTermLeaseCost_maLCz2lp_zMjLJbrcEqcd" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt"&gt;Short-term lease costs&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;384,902&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40C_eus-gaap--LeaseCost_iT_mtLCz2lp_zGCbsXJUdfU2" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Total lease costs&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;731,251&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">346349</us-gaap:OperatingLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">384902</us-gaap:ShortTermLeaseCost>
    <us-gaap:LeaseCost
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">731251</us-gaap:LeaseCost>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_891_eus-gaap--LesseeOperatingLeaseLiabilityMaturityTableTextBlock_zSWWHFoYGwvk" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;As
of December 31, 2022, the maturities of the Company&#x2019;s lease liabilities are as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8BD_zq2nGaCFCop3" style="display: none"&gt;Schedule
of Maturities on Company Lease Liabilities&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 80%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_493_20221231_z4QbVlVKyTsa" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;Year Ending&lt;br/&gt;
 December 31,&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_409_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_iI_maLOLLPz8za_zycEIygeanf6" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 78%; text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;2023&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 18%; text-align: right"&gt;303,059&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_iI_maLOLLPz8za_zX6di43brZH4" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;2024&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;50,773&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearThree_iI_maLOLLPz8za_zGy967EVcyUc" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;2025&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1635"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_403_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFour_iI_maLOLLPz8za_zm8H47QkU1Y2" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;2026&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1637"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueYearFive_iI_maLOLLPz8za_z7a4Mm5xQUte" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; text-indent: 10pt; padding-left: 0pt"&gt;2027&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1639"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_402_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_iI_maLOLLPz8za_zzK7zvgiQnw" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="padding-bottom: 1.5pt; padding-left: 0pt"&gt;Thereafter&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;&lt;span style="-sec-ix-hidden: xdx2ixbrl1641"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40B_eus-gaap--LesseeOperatingLeaseLiabilityPaymentsDue_iTI_mtLOLLPz8za_zwo0TqAU3Evf" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Total lease payments&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;353,832&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_406_eus-gaap--LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_iI_zb5o7ZqzxmL2" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Less: imputed interest&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;5,915&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--OperatingLeaseLiability_iI_zf1fF5vvsNHk" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Present value of operating lease liabilities&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;347,917&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40A_eus-gaap--OperatingLeaseLiabilityCurrent_iI_z1WsKphfMc6f" style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Less: current portion&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="border-bottom: Black 1.5pt solid; text-align: right"&gt;297,209&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_40F_eus-gaap--OperatingLeaseLiabilityNoncurrent_iI_zLHpE3gaIC77" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left; padding-left: 0pt"&gt;Long-term portion&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;$&lt;/td&gt;&lt;td style="text-align: right"&gt;50,708&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">303059</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">50773</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">353832</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">5915</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">347917</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">297209</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="AsOf2022-12-31" decimals="0" unitRef="USD">50708</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <CODX:ScheduleOfOperatingLeaseTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_89C_ecustom--ScheduleOfOperatingLeaseTableTextBlock_zMRwjQM566vb" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;Other
information related to operating leases was as follows:&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B7_zix7S5fGXOS5" style="display: none"&gt;Schedule
of Other Information Related to Operating Lease&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 100%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" id="xdx_492_20220101__20221231_zEqQ9PdyNeo7" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt"&gt;Year Ended&lt;/p&gt;
                                                                                &lt;p style="margin-top: 0pt; margin-bottom: 0pt"&gt;December 31, 2022&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr id="xdx_404_eus-gaap--OperatingLeasePayments_zoRrBGesqn98" style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="width: 80%; text-align: left"&gt;Cash paid for operating leases included in operating cash flows&lt;/td&gt;&lt;td style="width: 2%"&gt;&#160;&lt;/td&gt;
    &lt;td style="width: 1%; text-align: left"&gt;$&lt;/td&gt;&lt;td style="width: 16%; text-align: right"&gt;700,821&lt;/td&gt;&lt;td style="width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="text-align: left"&gt;Remaining lease term of operating leases&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td style="text-align: right"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;span id="xdx_90B_eus-gaap--OperatingLeaseWeightedAverageRemainingLeaseTerm1_iI_dtY_c20221231_zCNZF9oIpUY2" title="Remaining lease term of operating leases"&gt;1&lt;/span&gt; year &lt;/span&gt;&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="text-align: left"&gt;Discount rate of operating leases&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_986_eus-gaap--OperatingLeaseWeightedAverageDiscountRatePercent_iI_pid_dp_uPure_c20221231_ziIXv7lI6Cui" style="text-align: right" title="Discount rate of operating leases"&gt;3.1&lt;/td&gt;&lt;td style="text-align: left"&gt;%&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</CODX:ScheduleOfOperatingLeaseTableTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="From2022-01-01to2022-12-31"
      decimals="0"
      unitRef="USD">700821</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1 contextRef="AsOf2022-12-31">P1Y</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent contextRef="AsOf2022-12-31" decimals="INF" unitRef="Pure">0.031</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_80E_eus-gaap--StockholdersEquityNoteDisclosureTextBlock_zLf7vPOFOCj6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
14 &#x2013; &lt;span id="xdx_82A_zts3yGwQJlec"&gt;Share Repurchase Program&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;In
March 2022, the Company&#x2019;s board of directors authorized a share repurchase program that would allow the Company to repurchase up
to $&lt;span id="xdx_90E_eus-gaap--StockRepurchaseProgramAuthorizedAmount1_iI_pn5n6_c20220331_zR3I09Nu3Hie" title="Stock repurchase program authorized amount"&gt;30.0&lt;/span&gt; million of CODX common stock. The repurchase program does not obligate the Company to acquire any particular number of common
shares, and the repurchase program may be suspended or discontinued at any time at the Company&#x2019;s discretion. The timing and amount
of any share repurchases under the share repurchase program will be determined by Co-Diagnostics&#x2019; management at its discretion
based on ongoing assessments of the capital needs of the business, the market price of the Company&#x2019;s common stock, corporate and
regulatory requirements, and general market conditions.&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;For
accounting purposes, common stock repurchased under the stock repurchase program is recorded based upon the transaction date of the applicable
trade. Such repurchased shares are held in treasury and are presented using the cost method. These shares are not retired and are considered
issued but not outstanding. The following table shows the changes in treasury stock for the periods presented:&lt;/span&gt;&lt;/p&gt;

&lt;p id="xdx_898_ecustom--ScheduleOfTreasuryStockTableTextBlock_zYQspkJigVXa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B0_zH3E0U3QxiLa" style="display: none"&gt;Schedule
of Treasury Stock&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Year Ended&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 0pt"&gt;Balance, beginning of period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--TreasuryStockShares_iS_pid_d0_c20220101__20221231_zeHFyhMipQ02" style="text-align: right" title="Treasury stock, Beginning Balance"&gt;-&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 76%; text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Repurchases of common stock&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--RepurchasesOfCommonStock_c20220101__20221231_zarCr1EhmVM6" style="border-bottom: Black 1.5pt solid; width: 20%; text-align: right" title="Repurchases of common stock"&gt;3,881,658&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Balance, end of period&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--TreasuryStockShares_iE_pid_c20220101__20221231_zOIbxlcTu7n7" style="border-bottom: Black 2.5pt double; text-align: right" title="Treasury stock, Ending Balance"&gt;3,881,658&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

&lt;p id="xdx_8A2_zjwtpL91KVA4" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;




&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1 contextRef="AsOf2022-03-31" decimals="-5" unitRef="USD">30000000.0</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <CODX:ScheduleOfTreasuryStockTableTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_898_ecustom--ScheduleOfTreasuryStockTableTextBlock_zYQspkJigVXa" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;span id="xdx_8B0_zH3E0U3QxiLa" style="display: none"&gt;Schedule
of Treasury Stock&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; border-collapse: collapse; width: 90%"&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="font-weight: bold; text-align: center"&gt;Year Ended&lt;/td&gt;&lt;td style="font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom"&gt;
    &lt;td&gt;&#160;&lt;/td&gt;&lt;td style="font-weight: bold; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center"&gt;December 31, 2022&lt;/td&gt;&lt;td style="padding-bottom: 1.5pt; font-weight: bold"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-left: 0pt"&gt;Balance, beginning of period&lt;/td&gt;&lt;td&gt;&#160;&lt;/td&gt;
    &lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_988_eus-gaap--TreasuryStockShares_iS_pid_d0_c20220101__20221231_zeHFyhMipQ02" style="text-align: right" title="Treasury stock, Beginning Balance"&gt;-&lt;/td&gt;&lt;td style="text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: White"&gt;
    &lt;td style="width: 76%; text-align: left; padding-bottom: 1.5pt; padding-left: 0pt"&gt;Repurchases of common stock&lt;/td&gt;&lt;td style="width: 2%; padding-bottom: 1.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 1.5pt solid; width: 1%; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_985_ecustom--RepurchasesOfCommonStock_c20220101__20221231_zarCr1EhmVM6" style="border-bottom: Black 1.5pt solid; width: 20%; text-align: right" title="Repurchases of common stock"&gt;3,881,658&lt;/td&gt;&lt;td style="width: 1%; padding-bottom: 1.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;tr style="vertical-align: bottom; background-color: rgb(204,238,255)"&gt;
    &lt;td style="padding-bottom: 2.5pt; text-indent: 10pt; padding-left: 0pt"&gt;Balance, end of period&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt"&gt;&#160;&lt;/td&gt;
    &lt;td style="border-bottom: Black 2.5pt double; text-align: left"&gt;&#160;&lt;/td&gt;&lt;td id="xdx_98C_eus-gaap--TreasuryStockShares_iE_pid_c20220101__20221231_zOIbxlcTu7n7" style="border-bottom: Black 2.5pt double; text-align: right" title="Treasury stock, Ending Balance"&gt;3,881,658&lt;/td&gt;&lt;td style="padding-bottom: 2.5pt; text-align: left"&gt;&#160;&lt;/td&gt;&lt;/tr&gt;
  &lt;/table&gt;

</CODX:ScheduleOfTreasuryStockTableTextBlock>
    <us-gaap:TreasuryStockShares contextRef="AsOf2021-12-31" decimals="INF" unitRef="Shares">-0</us-gaap:TreasuryStockShares>
    <CODX:RepurchasesOfCommonStock
      contextRef="From2022-01-01to2022-12-31"
      decimals="INF"
      unitRef="Shares">3881658</CODX:RepurchasesOfCommonStock>
    <us-gaap:TreasuryStockShares contextRef="AsOf2022-12-31" decimals="INF" unitRef="Shares">3881658</us-gaap:TreasuryStockShares>
    <us-gaap:SubsequentEventsTextBlock contextRef="From2022-01-01to2022-12-31">&lt;p id="xdx_80A_eus-gaap--SubsequentEventsTextBlock_zHAywUvHV6w6" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.35pt; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&lt;b&gt;Note
15 &#x2013; &lt;span id="xdx_82F_zG4g5n7yUEK7"&gt;Subsequent Events&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify; text-indent: 0.5in"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;&#160;&lt;/span&gt;&lt;/p&gt;

&lt;p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0; text-align: justify"&gt;&lt;span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"&gt;None.&lt;/span&gt;&lt;/p&gt;

</us-gaap:SubsequentEventsTextBlock>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>80
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
M?!^2!F.,6_0T7X\48JVFL:W&VC$,>8!8\PRA9CC?AT6:&C/5BZPYC0IO0=5
MY3_;U UH]@TT')$%7C&9MC:CY$X*/-S^[PVPPL2.X>V+OP%02P,$%     @
MTX-P5BI'/)Q1!P  BS   !@   !X;"]W;W)K<VAE971S+W-H965T,2YX;6RU
MFUUSFS@4AN_[*S3>G4X[$\<@B&.WB6<<'+?>IDDV3MKM[NR%#++-!)!7B'S\
M^Q48@\F(8S,CYZ+QUWD,3R1X#ZAGSXP_QDM*!7H)@R@^;RV%6'WJ=&)W24,2
M'[,5C>0[<\9#(N13ONC$*TZ)EQ6%00<;1K<3$C]J#<ZRUV[YX(PE(O C>LM1
MG(0AX:\7-&#/YRVSM7GASE\L1?I"9W"V(@LZI>)A=<OELTY!\?R01K'/(L3I
M_+PU-#^-K'Y:D'WBAT^?XZW'*-V5&6./Z9.)=]XRTBVB 75%BB#RUQ-U:!"D
M)+D=_^705O&=:>'VXPU]G.V\W)D9B:G#@I^^)Y;GK5X+>71.DD#<L>>O--^A
MDY3GLB#._D7/Z\_:=@NY22Q8F!?++0C]:/V;O.0BM@JP55. \P+\IL"L^P8K
M+[#V+;#S CLSL]Z5S,.("#(XX^P9\?33DI8^R&1FU7+W_2C]NT\%E^_ZLDX,
M'/9$.6JCA^D(??C]XUE'2&CZ5L?- 1=K *X!F!A]9Y%8QN@R\JA7!73DUA2;
MA#>;=(%!XHBZQ\@RCQ V,%9LD .7?R?\&)EV5FXIRD=P^1]))+_=4'U[96^L
M0K"5\2Q0\#_#62RX'.3_J@RO";::D,[\3_&*N/2\):=V3/D3;0W>_V9VC<\J
M.SIA(TVPBCF[,&=#],&(N8D\P@AT_[JB*FUPN6FTOZG\@%5-_6B"5?R<%'Y.
MP!T<2CE>)F@<D(5*$%P_)T&L\NJ 94T-:8)5#'4+0]W]1M PBA(2H#NZ8ERH
M3,$<P1.E*+"JJ2A-L(JHTT+4Z9Y3C1-Y2L_.R/6R8%;ML ++FMK2!*O8ZA6V
M>OO9NJ7<9UYZXD/RY*L\1NT@;4YUM><ZL+ZI-$VPBK1^(:V_G[2Q'[MR+N;N
MQO+E6"4.IHU_J62!-4UE:8)59)E&&<N,1KI^4<+K9>V U0TNN*RI,%VTJK&M
M(&N".^DDG+\5!LW,';AVV\1MRU1J RL;:]-$JVK#I38,[N=E)'SQ*JT%%%TG
MX8QRI2P88AAFV^J9=D^I"ZQMK$L3K:JK3/,F&'DWNN[HPD\#O1QOUR14CR\8
MY-RT1Y/AE^N;Z?W$F1Z]FUP[QTI[6O.\+EK57IGH33B3Y_8<.4^YG*,3V3&^
MH&_T5>D/1AERS'7[V#9/E-:TIGQ=M*JU,N>;<%#/K=V3%S3QI#I_[KLDRVC
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
M6KS$%VM*FP&MQ1^%>-!'UZ@)Y4[*]\W-J_QJ$32(1"DRT[C@\',0:U&6C2?
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
MO(_QJSVCVK273>2)T&56DUHE+BUYA+AL^<CR T%79^0:UI4MJ=EV^ $DY(R
M]B\&XB3R//'-M@)?W5:<O0(<$ 4\]QV5$K091E9G[DC5X7+ 6&BS"\B<(20L
M@H3%D+#DY-3V%.3N%>1J%=1>Z[UM5D<K8UD5?,E8IYUVFM=$I1@M<43O<.5C
MPK8%I0#E"EUI]AS'] /7%/H&4+X8B)/(<\2W.[!-6UUV;U]V[U5EUS4,+7EL
MP_#D=F[;IB.490&9,X2$19"P&!*6 ,%Z^O+W^O+/.C&E2[ZXKMO5H5);6NJ(
MUN++K<7%XG7)&<F&1>7+5]D.<APG$#I:!+2+,1 G46ZX:V)LJ5M,L)= \&H)
MZ-J,ECZVS01RFW&;59!XNH%,&D+"(DA8# E+@& ]D2'SX.^96IG]29B1E?P<
MIKQ4T0>/:"A0H,4YH&&)06U6! 6*.]#QH6:YKN,[KG"L)2\9V1?%D>F+SK'0
MD%(B6M08B2#II&-9/A8O9:#RA1WH>/Y\$WLH",3%,%3*6)'2L9$;8"\0BRN/
M1)9M>_SB=6#-BP[^*'J103IDIJFK#.64=B"W7V44^"X6"WU&2LV1#DF+0&DQ
M*"V!HO75=7!JD=ZJ?8VKID>/49DE]1)/:B1 R4(D.\2>YYOBTA@J7PP%2E2S
MY/E'$]67P,%713#&JN[R59]B[/4KDFU/S_0")$H"U&H%I46@M!B4EIR<WKZ0
M#O8LTONSY[AK>N28'N+(1X?DQ$)E"Y'L3WJ.C>W %]L(4,88"I2H)LJQK<$5
M,#J8J^AU[JJV@9QA(6H:B&R >LTZWQ7U )DU!*5%H+08E)9 T?I".]BY2._G
MGNNWZ;%CFHTG'4/2[X!0R4*D<(U]T_4]L=4 )8RA0(EZRSW/'>@T![\5O=YP
MU78;2#-TCF13T?=M6VHVH XL*"T"I<6@M 2*UM?:P=A%>F?WA.5VAA^H;BE
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
MK7)^:SSN/,ZF3E^1D8$UR["(8E+7=BQ^NU5K9#3KX*WX'O@2HV.<]8'9.%E
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
M1]Q@"?'8H_N,N_TNP+*6N8&X/PR2P8@PSKIQ)_/F]<(V$9U6:QVPL7?7F_?
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
M OB^$:#<Y@4)=/\$N?P_4$L#!!0    ( -.#<%9"-P8F P,  &T&   9
M>&PO=V]R:W-H965T<R]S:&5E=#$R+GAM;)5546_;-A!^UZ\XJ$/1 D(D49+M
MI+:!I$W1 >EJ-.CV,.R!EDX648I422I.]NMWE!S5!5P7>Y'(XWW??4?RCLN]
M-E]M@^C@L97*KL+&N>XJCFW98,OMA>Y0T4JM3<L=3<TNMIU!7@V@5L8L269Q
MRX4*U\O!MC'KI>Z=% HW!FS?MMP\W:#4^U68AL^&SV+7.&^(U\N.[_ >W9=N
M8V@63RR5:%%9H148K%?A=7IUDWO_P>%/@7M[- :?R5;KKW[R>[4*$R\()9;.
M,W#Z/>!;E-(3D8QO!\YP"NF!Q^-G]O=#[I3+EEM\J^5?HG+-*ER$4&'->^D^
MZ_T'/.13>+Y22SM\83_ZYA2Q[*W3[0%,\U:H\<\?#_MP!%@D/P&P X -NL=
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
M85;9M9=<&X:2,"^B#'Z1]0H^<+6! 9='N." A!&@.#S<A6Q?1H<O@=2*4J
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
M;\BQ8NMCH;&)UV,((?H!_,-5OK)I+,0CYO_:6LQ1[R4:W?>MX4E 2L[U"D=
M\;,6MI3A5$XXV+74)0'7)$CR]D &XH^\:KO0.%47:D]T8'O('6#/!CKI,KLO
MJB\K/(CHG)F?35-\O!?&V74HR:"/%F@F4^Z)\&L>'- IMS3Y;TEP2RJVU"^U
M%F98ZR\4^,T0'[=*I\YEGJL6]X9X3Q@XQ8^(!"<V.1@.78_MSDVS- &%>1'S
MP8I>[.VM']1:3$_3A(49:#7UOYWJ$.3GN7Z<P?5_4'YBAVS#YK$[S^C!_?MW
MUY>W< T""Q/<^((B]P&R&(%$;N#'+(XS-_OR& 9AGSH8(JA6.")PXN^VM-"Z
M)AXG7N8&B0_>'$<@S3@*V!OGW:X=]5:L(U@_(L'$32.0?4JBMTJ@4PK-QGY,
M)Q:20(Q8O0R7CMUQJ01:XAO"CE'@X\Q(;M*7)AVM$BM:=/<5B8GA^IX_$)M8
MSS0?CAW,,--C!)($+LJ#T*1N.L<P23 <'!3TH=IXH ?9P(W\%(,D[12#8.Y&
M$8)&TK0^VFD3X/N&U9-#NR<'EMFE<;[J#]=V%.T$O-FP%2]8(_N_ +$$6< N
M[ZYQ#.LR9VGD37QOXL6@-F07:P^T^Y%&/);;!/ #,@%=,QJ-#TWYO]<G%RN7
MG;F=*D99#?[&B7\6U<;!PP; K).%H/[7V-K!7K!+)]6B =R>L&7GQXA\U90Y
M_-08 (.MJW<Q9;^U"C0X0#@<,0M>=<V*4JE:FGTGC+:+#%M*BBLO2=TY*G%(
M+?=#8T0O_=35+]'*_0O>]79;6(B'LFDHWAX]K7T6R=;_"8LB7(6^\[.2VL)5
MU/M@\MUV994.:1X&L$?%V*/2%'V49$?4UZK$LGE$.8Q<+XQ1DYU.(?Z%SCA!
MYV>VU]#%<!FA3%\_ "RW%/8NY.WA#\(G%L%<Q( @W@%W\LHV)VJ-U"9DHL\D
MU'K<H&:[D6]+'[6FV\4G#"MF)*'HVJ^OU_NFI+W+[BD=DTO+%+9ZV:=6E;HH
M[1:AIV36AM%MYW;9^J+O_ Q6E6P?5KLGSFYB85^@B4P_!A 4\<SQ,MJAH;W_
MR,:X;A7.N >VV%C$';Z:?Y(V"50]!S#)]-.JQ"09$("S/X4NC,'I4./UM51M
MT#) <8!M0;2_V?KBK5E)=-QFRHZ]JLT&K]'HS ?[8P$-^K8QW1OU[N[N]XC+
M[C5\+][]F/$K5V@/S2JQA*HW3>,14]T/!-T7(]?VI7PA#5[Q[>5*<, G 3Q?
M2KRU]5_(P>Y7FHM_ %!+ P04    " #3@W!6TGX ?K0&  "+#P  &0   'AL
M+W=O<FMS:&5E=',O<VAE970Q.2YX;6R=5UUOVS84?=>O(-QNV  EMF6[3M(D
M0)MV6(%T+9)NPS#L@9:N+**4Z)&47>_7[UQ2=N1\ =N+94KW\]Q[#\GSC;%?
M747DQ;=:-^YB4'F_.AL.75Y1+=VQ65&#+Z6QM?18VN70K2S)(BC5>IB-1J^&
MM53-X/(\O/ML+\]-Z[5JZ+,5KJUK:;=O29O-Q6 \V+VX4<O*\XOAY?E*+NF6
M_*^KSQ:KX=Y*H6IJG#*-L%1>#-Z,S]Y.63X(_*9HXWK_!6>R,.8K+SX4%X,1
M!T2:<L\6)!YKNB*MV1#"^+NS.=B[9,7^_YWUGT+NR&4A'5T9_;LJ?'4Q.!F(
M@DK9:G]C-C]3E\^,[>5&N_ K-E%VE@U$WCIOZDX9$=2JB4_YK<.AIW R>D(A
MZQ2R$'=T%*)\)[V\/+=F(RQ+PQK_":D&;02G&B[*K;?XJJ#G+Z],72L/E+T3
MLBG$E6F\:I;4Y(K<^=##!0L.\\[<VV@N>\+<.!,?8:%RXGU34'%H8(C8]@%F
MNP#?9L]:?$?YL9B,4Y&-LNP9>Y-]PI-@;_)_$A;OE,NU<:TE\>>;A?,67?/7
M8S!$)]/'G? DG;F5S.EB@%%Q9-<TN/S^Q?C5Z/4S*4SW*4R?L_[?:_:LN<>#
M_<5X2L83\?V+DVP\?BV>A^V:,!C)IX562\G#YL27BA+HK&2S%9J_.F'*4N4D
M@BO1HCVLD*(QS5$NFQQC*1>:!-C&2K8<M8*O3K\OME&^$J8A47.WP8J'Z6/V
M*G9>Z1N("WJ)Q\NH&U0[:ZH1_ 'NE"FPREMKB?^ *')C"U:(;H(8-X+*I0YF
M"P4<1& 6*H[%&P=.RZLT!!3#KN57^&A701G"RI+?)J8,:\M,<63*HY83= [4
MNT]3:"472BN_%47L1?8  @II;$E:F,-D"<P%U0M@N)N-5.3('"%PB> IFNM0
M$!(='8E7_0-MZ41I-!C9G8E;$'W1:N+P0B'%^ZB4_,'NWA^XB[Z23_?*E!L'
MKR_%9/HJG4Q/D]O*6'_DR=8' I.3:7HZRI(OQ@/*0]4Y$LEF8W&GFO0%8L.$
M<A]Y<Q3KWO7(TA)UK8DT5U(5PAML&5JB/EA;CR;E.G&*CP#'T(+@6ZM84'1E
MZAHI3,#\M;M7'Q9D;T\A^;%GK]DW9<3W^L[&'F-@F2":"8,XFJ2CV2DOIV(V
M2N?S"?^?B2-^O(J/.1YH=VS$);#B10_3E=Q&/":S27HRR9)K<HA/U:O6AR:'
M"CDO9NGI>)9\YJE'0Z^E;HFSOS^$_9PGTSF4YIW%,#507:%FO,EFI_,T&YTF
MUZ99QO+OOKP,F8Q.Q"=@:Q/5Q -%W-MCH5"S>YZ=V #?IR .EL2'GJ6;.TMW
M'1K)Z9%>WG= <B5=%?L&MAX& 7;0;1'9X>YCSDHEA\7=.QJEZ)/DAO@D= ==
MP. AI$Z,$]YK3 OP\.$QV('U\5A\AV[Q':T>- Y'"GH +QY0,0;<L8G2FEKD
M6JK:I8%DG LMD0J]MY>*$GL!?P?]8.2ECFV-E0G8.M/:O&MT2TR+ &%342.4
M%\J!%LV"217D)$%B/?*J4+0%L>".6=DJCY6L0])@9 C JG2F@0T0MO.JEH%1
MKVF)7HZ#WZ=FI-ITQ[E S0_S3SC4CO0"S>W4#S<'Q"[Y\ 8NE0B&-X.-8;A@
M3T8'$;LN;! ,Q*U:2SY$)E'$11E&.^3?(PU&IF[U,G1C*76WD]7*H;0\ZX*W
M6L>M'TN-CD6D-O9,V'!XK^2F:%$&;_*O0:2&772)WB8+:JA4T6G<66T,ML!>
MDWMC[_-8!&"%B %763KD4[,\[QI 2T(%>XZL<13G_<QY"$8()<)T..4^08R)
MU)J6W!@64U\8SHZWT697:@2^X(S,&OW .%DE]6$]%J05K1F'BIAPY,:UJN-S
MKC2N$Z(&_G&G9/YJB@!:K"&K)7D <JV6QIK6Z>V#BK=-. ! :]=JG)I$ZX3]
M$KV4"E7"PS:-!<5XZF*7_ :4R7XL=0EQ@L4:L!./$?JUH%SQ926)9PO>NCBD
M<$#HH"NZ4?>5XN(S.:8'?5,8Y(#CS Z1>X.V;[2=<:"C]2[$B'K;E')M;)A+
MX(;ZTFM1F0VLV2[!OHSH9+H$P<$Y)D8<YI#NX@!(JA\'MR2FH8-J$?91XOJR
MI<>:)8;J>GS'@W1P&OO!_<@O-I7**ZY&.%WMPUP0/WJ0<$?$@F)U+!X[8 ][
M%R2TT3)< YDYT)[QKK1_N[]IOHD7K#OQ>$W]*.U2-7P:**$Z.I[/!O% MUMX
MLPK7K87QN+R%OQ5FGBP+X'MI<+3N%NQ@?_^^_!=02P,$%     @ TX-P5J[A
M96]H P  CP<  !D   !X;"]W;W)K<VAE971S+W-H965T,C N>&ULE55-;]LX
M$+WK5PS4HB>O]6$G-1+;0)QVL3VT".+N+HJB!UH<6T0DCDI2<=-?WR%ER^HB
M,; 76QS.>_-FR!G.]V0>;(GHX$==:;N(2^>:JR2Q18FUL&-J4//.EDPM'"_-
M+K&-02$#J*Z2/$TODUHH'2_GP79GEG-J7:4TWAFP;5T+\[3"BO:+.(N/AGNU
M*YTW),MY(W:X1O=W<V=XE?0L4M6HK2(-!K>+^":[6DV]?W#X1^'>#K[!9[(A
M>O"+#W(1IUX05E@XSR#X[Q%OL:H\$<OX?N",^Y >./P^LO\9<N=<-L+B+57_
M*NG*13R+0>)6M)6[I_U?>,CGPO,55-GP"_O.-[^(H6BMH_H 9@6UTMV_^'&H
MPP P2U\ Y = 'G1W@8+*=\*)Y=S0'HSW9C;_$5(-:!:GM#^4M3.\JQCGENM2
M&(1[;%I3E)P=W!G:&5'/$\?LWB<I#DRKCBE_@2G+X2-I5UIXKR7*WPD2EM5K
MRX_:5OE9QG=8C&&2C2!/\_P,WZ3/=1+X)B_PO?_>*O<$7V\VUAF^#M^>2[*C
MF#Y/X5ODRC:BP$7,/6#1/&*\?/,JNTROSPB<]@*GY]C_UV&<97I>YR=R&&53
M>/-JEF?9-;P4#C[HZ*-@6RC\"%R)<$MU(_13@+Z]MK A8230%J0RW&!D+(C6
ME6343Y0@P 9N<^)N#MRN%(X[M:W8J^*1,&0'1T-(VT1L> V3=)P"]V DBH):
M[93> 3LU9-&.H*"ZYO;F3BD>!F@)+5]#$^C_N]>+49:M!1F^KZ&W&=0PE\?P
M#=%6=*-#"H<^5V\735.I0FPJC-A%XAC6+5=J&#CDSO7@ I3(>2IFY(%I6_,$
M0LNP$4Y%.Q_1^GP\=4'608U<13F&SR4[#*DT.8[BN-RR9RF(IR-GB3)2UK8^
MB]8%3YZ_UK$;<P<NV)*O=@CEQ3,S[6T7MA1ZQT&&,KN*\<P/'@T:1=*>1%_!
MFE\'V7(1N"R?CZBU1T5?4)AN!D3<P5AO^!2.71RM1"5T@2/8X$YI[?4P0Q<
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
MQG1N\M%QG0OT5/@M@:!X#\&IPVM $E09(GV"Q.#4SR4(LW7R><]Z"G(?^Y.
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
M&6:/ 0(BWK)G1_97["+B>TR[$$<^L)"Q"WAQ6XVXQHLO5*-._=>"P%_S%96
MSM#?3^7=H/:>1G5S-39;GN+4H\$QJ!_0F[UZ$0W"=Q<X]UK.O4OHLR7-:585
M"&H-E[KYA>M[M*YWU,X'--:U$Y:85EI8@>:IO"Y&?CJOVQP[:U70L NY@2:>
MR=7.@,T1%JK<<KE_]2)AT?"=@;0F[+Z OQ(N3X3%B;!I"<-J#T9LI%B+E-/.
MF5'*+6Z4WG>X<66A8X+E"G5[5,9PK%KG?U:M\QMV9Y[]0W.+=(B4L3!WI: Q
M0J ;%!8:,V'ALS*&$KA5EH;K3M)M6HA_R>,CW:(& GC=&+R!:RXT?.-%A?#\
MV3SC>$:L-GL)$?.3N.?W>CT2WAY^CY2/+3J?\0$+B,8=FE7<'[H ZTIF!J+>
MP(_[(\)XVZY;76=9K6R=T66S)@ ;=^ZZRRY82MY4>G_>V,'03T;$BO4)($Y&
M/NM%,$A\EC _' Q@Y(]&L1^&(?2=<N24I^C_R;MIQ4M(0C\9QOZ )8=2'0%H
M*_+9@' '(Q(8\T=DEX0Q"2<<>&J@@[/KN42]J1\A.ONJDK:YJ5MM^\[-F^O]
M9-X\DM3JC3LB!:[)->P.^Q[HYN%I!*NV]66_4I:>CGJ9TUN-VAG0_EHI>Q1<
M@/;UG_T$4$L#!!0    ( -.#<%:A<=\,DP0   T*   9    >&PO=V]R:W-H
M965T<R]S:&5E=#(T+GAM;)56VV[C-A!]UU<0:E$D +/677*:&'"2W39 4QA)
MVCX4?:"EL<4N)6I)*D[Z]1U2LN+=)MGNBTV..&?FS!Q>SG92?=0U@"&/C6CU
MN5\;TYW.9KJLH6'ZG>R@Q2\;J1IF<*JV,]TI8)5S:L0L"H)LUC#>^HLS9UNI
MQ9GLC> MK!31?=,P]70!0N[._=#?&V[YMC;6,%N<=6P+=V!^ZU8*9[,)I>(-
MM)K+EBC8G/O+\/0BL>O=@M\Y[/3!F%@F:RD_VLEU=>X'-B$04!J+P/#O 2Y!
M" N$:7P:,?TII'4\'._1/SCNR&7--%Q*\0>O3'WN%SZI8,-Z86[E[F<8^:06
MKY1"NU^R&]:FB4_*7AO9C,Z80</;X9\]CG4X<"B"5QRBT2%R>0^!7)97S+#%
MF9([HNQJ1+,#1]5Y8W*\M4VY,PJ_<O0SBXM>HT5K<BF;-6^9+94F1_=L+4 ?
MG\T,QK K9^6(=S'@1:_@A1&YD:VI-7G?5E!]#C##Y*8,HWV&%]&;B%=0OB-Q
M2$D41-$;>/'$.'9X\3<P)JRMR%)KW 3+\E//-7?6/Y=K;10*YZ^7"C&$25X.
M8S?3J>Y8"><^[A8-Z@'\Q0_?A5GPXQLDDHE$\A;ZX@XW9]4+('(SY*T=A5\X
M6W.!R0/.-6ZT+SLP9/XF]LN9W]?@&6F8(%VORAKW 2E1*;P"Y2I("6]+T5>\
MW1)6_8W"Q9UK2-4K:S$UD :8[A4X<P>*RXJ2'<,\A9 E,U 1(]U"-O*QC5!H
MML3$,S%O)(;KB&T8'DRF)FM[O)R2?5V\K];%6S:R;_'[+91RV_)_!D3K=Z
MW%- CM".E7C@LM?B"8^B#D-"=4QN#BBM'"6RG+AK\FT1AJHAK+?:5_CRL,+>
M!\85>6"B=UTO9=.@NZX9]HAP)(7PWY,HI2@Q&D4Q3I(BH'F>#>8L">A\/O=6
M[,EN;EMMYUQ+@2%(& 0T" )RM!\<DY/_A&P-=M.R'<,6-"L2FF5S$F8IG:<Y
M6HHTH%F4O>Z[8THQ6Y>0YDE.YWE$XI@F060-14CC//'NG=0V7T(\5X/@OFSU
M!I1RM&/D-X]HD24X29%V&*?6G-$HCQSMZPIC\PUWW+\BL4DCETS7"!/2<(Y(
MB:WIR>'<6Y;ET&,%)? '!XYG59@'N' 8>"L4#.,5@4>\234,BI2H=(4'/.:/
M)1GSR0,:1R%Z#@/TQ,M7F2?G 9AKYZ26! 4"Q[AN''GW4-:M%'+[A,;K]J13
MLK1'G-V^#,7D "IXP$TR0$09#8/0]?GD8.+]*ML35%8'9E GVRJ 0<VX8)Z,
M'M/XN0#=*"L;B96ELG(<2$Z\C] MFV-'$A37D0V9SF,WM'7"YN7DV+N"L:F&
M/4X]>2)'&2V2E*9%;H7YV704"S]L< M342.4?9'1(,D.8Z*U0.DF:>S])&6U
MXT*0,*%Y@,!A03+481X5)$QI7!0T3;(QRO^0&GGI?)\=7-$-J*U[B&CBBC?<
MUI-U>NLLARO^>?GP4+IA:LOQDA:P0=?@79[Z1 V/CV%B9.<N_+4T^'QPPQK?
M:Z#L OR^D=+L)S; ] )<_ M02P,$%     @ TX-P5BAL2D,*!@  :A$  !D
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
M235=SJ78$FFX$<T<&E<;:32.<9.46RWQ*T,YO?PL1+IE14$H3\D5UY1OV+H
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
M#'568,WUA6Q0T,E*JIH;$M4ZU(U"GCNEN@I9% W#FI?"GT_=WJV:3^7&5*7
M6P5Z4]=<[198R>W,C_W]QEVY+HS=".?3AJ_Q'LW'YE:1%!Y0\K)&H4LI0.%J
MYE_%EXO4WG<7_BQQJX_68#U92OG9"N_SF1]90EAA9BP"I[]'O,:JLD!$XTN'
MZ1],6L7C]1[]=^<[^;+D&J]E]:G,33'SQS[DN.*;RMS)[3OL_'$$,UEI]PO;
M]FXR\B';:"/K3ID8U*5H__G7+@Y'"N/H!076*3#'NS7D6-YPP^=3);>@[&U"
MLPOGJM,F<J6P2;DWBDY+TC/S.WQ$L4$X?^#+"O6;:6@(U9Z%68>P:!'8"P@Q
M@P]2F$+#;R+'_#E 2'0.G-B>TX+U(MY@=@&#.  6,=:#-SCX.'!X@Y_XN%*R
MAFOBJJ@6*,ZF@&L7853P]]52N_U_3D6@Q4].X]N^N=0-SW#F4V-H5(_HSU^_
MBH?1VQ[VR8%]TH<^OV_;!>0*]HXL=_ 'RK7B35%F<$7->(IT/^Q#@=Y*5M24
MI5B#L=D'C48#-3H%1CV96C^9XF3J$OX3(^\OY*JK":",8KVD,%-6/9M5F]K8
M^RA*0Z?WAAO4\ NP)!B.XB!-$Q)2%L3C-!C'S+M#;:RU3U)5.4R"-!D&PS2%
M) V&DTDPFL3>@S2\(JU!$K!X'+!H0L)D%(P)8A@-O%M4&0I#[XP%.O+.N?0=
MDQ&#,T@'</:=93:F_60$9SUI30]I3?O32L]KOJD<G1M<H5)DOPOGJ6SVHITN
MP>N"BS5JKQ1@"J3*KQLN=J]?C5D\>JOMV]5:/42#5UQD:"O *>Q<!O&'#+J^
M!"YRET78HD+@MG!L-6FJCQ[7O$5GA!3<\7/8" 91&@RBD;>O+(697(OR7X(H
M159M<K=XF3PWCOL2UZ40MK3)BMUH4)4RAW.6#H,XCN"-]UYDE'N-D).ZD4"!
M:_B.!HYM OM49-WC0 4QH:H:_* AI'$$L7QT_1.G41!%D4=>/;M'@V8C<FV7
M3Y@V?KQIJC+C;C[1H1VU>T<TG,=L'"2.:G_08BKUO>G_*VP=_D^Y,.+R*YSJ
MC_!H2%$ UFX4:\CD1IAV7AUV#]/^JAUR3]?;3X4/7!%-#16N2#6Z&%%SJ';\
MMH*1C1MY2VDHVFY9T!<+*GN!SE>2,M<)UL#A&VC^#5!+ P04    " #3@W!6
M6PES^BX#   L!P  &0   'AL+W=O<FMS:&5E=',O<VAE970S,"YX;6R554V/
MVS80O>M7#-2B2 #5^K37WMH&UO$6[2'!8ITT*(H>:&ED"4N1*DFMDW_?(25K
MG=;KHA>;',V\>6_(&2Z/4CWI"M' EX8+O?(K8]K;,-1YA0W3$]FBH"^E5 TS
MM%6'4+<*6>&"&AXF430+&U8+?[UTM@>U7LK.\%K@@P+=-0U37S?(Y7'EQ_[)
M\%@?*F,-X7K9L@/NT'QJ'Q3MPA&EJ!L4NI8"%)8K_RZ^W636WSG\5N-1GZW!
M*ME+^60WOQ8K/[*$D&-N+ *COV=\AYQ;(*+QUX#ICREMX/GZA/ZSTTY:]DSC
M.\D_UX6I5O[<AP)+UG'S*(^_X*!G:O%RR;7[A6/OFRU\R#MM9#,$$X.F%OT_
M^S+4X2Q@'KT2D P!B>/=)W(LM\RP]5+)(RCK36AVX:2Z:")7"WLH.Z/H:TUQ
M9GW/E*C%04.+"G854PAO/K(]1_UV&1I*8-W"? #;]&#)*V!Q N^E,)6&>U%@
M\2U 2,Q&>LF)WB:YBKC%? )I'$ 2)<D5O'24FSJ\]+_D/HQR_[C;:Z/H=OQY
M27 /EUV&LQUSJUN6X\JGEM"HGM%?__!=/(M^ND(V&\EFU]#7.^K HN,(LH0-
MTW4.3!2PK7EGL(!_2[G$_VJ&R_P_5NB5DE.[$CP8>QFH_7(I\IJN!9@*070-
M*F:D<HRLI4 AZ7HZ6Z>)GI&0,YYWG!FT?3.P+P;V>'[OM#L(FC#PE>P:T-X>
MH+/'9H_*.YV_ Z!%? O_MS2>B[>QWN\NQ?TW*>P5.W/Y<)+G?:"Q6(M<-A@
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
M@%)6C6AU)5NFQ.IR<NV?WZ0D;P7^6XEG/5HSBF0IY2=Z>%=>3CQR2-2B,(3
M\?,D;D5=$Q#<^*/'G PF27&\WJ&_M;$CEB77XE;6OU6E65].L@DKQ8IO:_->
M/O\L^GABPBMDK>U?]MS))L&$%5MM9-,KPX.F:KM?_KG?AY%"YKV@$/0*@?6[
M,V2]O..&7UTH^<P420.-%C94JPWGJI:2\F 4OE;0,U?OVD(V@GW@GX5FTP]\
M60O]YF)A $T"BZ*'N>E@@A=@_(#](ENSUNS'MA3E(< "/@V.!3O';H*3B'>B
MF+/0=UG@!<$)O' (-+1XX7<#97>5+FJIMTJP_UTOM5$HC?\?B[E#C(XC4KN<
MZPTOQ.4$_:"%>A*3JW_^PT^\?YWP-QK\C4ZA7SV@_<IM+9A<L5O9;&0K6J/9
M*(Q[)9\J:HYCKI\$/^[ZA[5PBKTEV#5KP38[*PP3@%6=>6/+I9#H3;T77<D:
M/5ZUCU:4WGP17&DFJ"08$BJ:I5!#4AEO2UKXYVP7K//]8!VK2FK.[T#OZNT
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
M*%IH"JTM9^-ID/Z%Q?"T#DXIPD]H%.HC.Y.YW=@/^S_LAXG=>FABZV,:?*K
MZ,L14VCM^6A,D0W-G]$PZFV,HH6FT-IR-M[&UK]F&9S8%5X[9[UN9O>WZKYB
MTL<VE/OXX$B62LE5<;1-@"+SRA--]=WZ^-S[XM!8Y_X-O)J7A^ :F/),WD?,
M5S03("%+!6E=3E2QQ<MC;N6%9)OBX->"2;4N%!_7!,>$YPW4]TO&Y,M%/D!]
MV'#V+U!+ P04    " #3@W!6%Y\=BC,&   ]+@  &0   'AL+W=O<FMS:&5E
M=',O<VAE970S-BYX;6RUFEUOVS84AO\*X0U#"V25^&%9[AP#;=)T!1J@:)KN
MHMB%8C&Q5DET1=IIA_WX4;(BRI9\;+%2+AQ_Z)S#EZ+T/J;/[%%D7^62<X6^
M)W$JST=+I58O'4<NECP)Y NQXJG^Y%YD2:#TR^S!D:N,!V$1E,0.<5W/28(H
M'<UGQ7L?LOE,K%4<I?Q#AN0Z28+LQVL>B\?S$1X]O?$Q>EBJ_ UG/EL%#_R&
MJ]O5ATR_<JHL893P5$8B11F_/Q^]PB\OV#0/*([X'/%'67N.<BEW0GS-7[P+
MST=N/B(>\X7*4P3ZWX9?\#C.,^EQ?"N3CJJ:>6#]^5/VJT*\%G,72'XAXK^B
M4"W/1_X(A?P^6,?JHWC\DY>"QGF^A8AE\8@>RV/=$5JLI1))&:Q'D$3I]G_P
MO9R(6@#V#@20,H#L![ # ;0,H(70[<@*69>!"N:S3#RB+#]:9\N?%'-31&LU
M49J?QAN5Z4\C':?F-WI=A.N8(W&/+@*Y/"L>T9MOZV@3Q#Q5\@P%:8BN@^PK
M5\&=/O)=NN%2Z5.IT U?K+-(15RB9Y?ZXRB6S]'OZ/;F$CW[]?G,47J$>1UG
M48[F]78TY,!H,$'7(E5+B=ZD(0]W$SA:6J6//.E[3<",EWSQ E%\AHA+2,N
M+DX/Q\!P:#7=M,A'#^0K)C>?S_U91E_>ZT/1.\43^7?;Q&WSLO:\^<7^4JZ"
M!3\?Z:M9\FS#1_/??L&>^T>;Z)Z2[4P!JZ: 0=GGK\)_]++F>@J$5&U*M^'C
M(CR_"VWFONM/J$?\F;.IJP#K6*H85RK&L(I8WP"#=,&1OI6BBXR'D4+OA91<
MMFD"D[4/%;6=.(L\1R5[E60/E/Q)J"!&MZEVBSCZ5Y_ M]HE)'+0LZWNUNM]
MF]*KG4SJ3PG#>Z<2K&RI:U+IFH"ZKH(H0Y^#>,W;!$P: GQ,]%KTIGL2P"*6
M$OQ*@@]*.'A;:5/D-Q01,IU0WZ5[BOSFA>A[[H105AVX,]II-=HI.-J:EQ@#
M:1OIM#'2L4_\J>MY>R,%ZUG./7:-A;HG+J S;8ZK=>Z9[_F&QPBC+]<\N>-9
MZRT=3MOUGMY7MMU)J'$$'LC9RL1]34-/V7:G@9AI(#_G;F5\?5%CYM'Q_NT$
MKF.KPW *!AF@J[_!V3H8G$VBX[(-FV 83JP\#L[91?P01(,-TF"8:6 C+(./
M+]PA& 4;2,$PI72R0MS$DW9-0_ )-H""84(YV3#A/%U6XA T@PW.8)AG#CLJ
M@1T53-O92GK*MCL)AI+P="A'[8F'RFD8@JZ(H2L"T]511RWCZQ>Q-]%?,GPR
MWKN,X4JV2@PB$9 ]NGHJG*W#Q6R3Z+AL@T0$1B(K3R5-3&K]X@C7MM5F,(G
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
M-CXZ!7@'W5)]E.P>PNQN5Y6$@]G8YQ3J'71+M>_HMV\PS[^QJAD:&5]?S[:
MNV'MUWE9U0^)[R&,[^-KFG @FZ'D%.L==$NU3G)_"'._?44T--:F3:/'*?:/
MD%4MD. ?PN /_I14)_HH\6.L_9+4*=&?5U53E:P>CJA_&_/LVATO<37>N<#Q
MK?,\J]KE.3UZ","&E4_MPQ2:&S4Q"7:_IC]\>GA@PVW[F(+!YPO_T[)[[((,
MTST%XBLMG[*B0CE[%"&]C['H5-D]6*';J/FV?=3  Z]KOFG?KAD5=X;-#N+[
M1\[KUXU&X/!XB_G_ 5!+ P04    " #3@W!6,YF*1:4$  !2%0  &0   'AL
M+W=O<FMS:&5E=',O<VAE970S."YX;6R]6%UOVS84_2N$-@PMT$4?MF0[LPTX
M3HL%6+H@0=>'8@^T=&T1D427I.QDV(_?I:1(5BPS,R;,#Y9$\1[><_AUQ.F>
MBT<9 RCRE":9G%FQ4MM+VY9A#"F5%WP+&;Y9<Y%2A8]B8\NM !H506EB>XX3
MV"EEF36?%F5W8C[EN4I8!G>"R#Q-J7B^@H3O9Y9KO13<LTVL=($]GV[I!AY
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
M0-U_8$Q^G.@&JEU)T_\!4$L#!!0    ( -.#<%9&N ?KT@0  /,@   9
M>&PO=V]R:W-H965T<R]S:&5E=#0R+GAM;+6:;6^C.!#'OXK%G4Z[4K=@\Y"D
MET3:MKNZ2JVNVFKO7ISNA0M.@A9PUC9-*]V'/_,0#"UQ2VK>-$ \?\^,9\H/
MG/F.LA]\0X@ CVF2\86U$6)[9ML\W) 4\U.Z)9G\9D59BH4\96N;;QG!46F4
M)C9RG,!.<9Q9RWEY[98MYS0729R16P9XGJ:8/9V3A.X6%K3V%[[%ZXTH+MC+
M^1:OR1T1W[>W3)[9C4H4IR3C,<T (ZN%]1F>7;BH,"A'_!63'6\=@R*4>TI_
M%"=7T<)R"H](0D)12&#Y\4 N2)(42M*/G[6HU<Q9&+:/]^I?R^!E,/>8DPN:
M_!U'8K.PIA:(R KGB?A&=W^0.B"_T MIPLN_8%>-#0(+A#D7-*V-I0=IG%6?
M^+%.1,L 'C) M0%Z;N =,'!K [<,M/*L#.L2"[R<,[H#K!@MU8J#,C>EM8PF
MSHIEO!-,?AM+.[&\DW41Y0D!= 5NF:P.)IX SB+PY6<>;^5Z"?#AD@@<)_PC
M^ 2^WUV"#[]^G-M"SETHV&$]SWDU#SHP#T3@AF9BP\&7+")15\"63C>>H[WG
MYTBK>$G"4^#"$X <A'H<NGB[.=2XXS:)=$L]]X#>/GDGX#;!,FO='/YS+8>#
M*T%2_F]?\BIMKU^[:.4SOL4A65BR5SEA#\1:_O8+#)S?^P(W)-9)@]>DP=.I
M+Z\)YV>R.<,\S1,L2"1[2DX3QKCHVK[0*SV_U"O^Z3PL/T%W@I WG=L/[;!Z
M!@8(0=]OQG4\]AN/?:W'G:HG^Q4[ 1D1?>Y68D'+"^2[,V_J/O/VY3@X<UT$
M@WYO@\;;0.MMJZ1N2'I/6&\Y:36&EI,AL4ZXDR;<R8A=-3&9!D-BG31,FS1,
MCZK1-:.<]T4^?=$KKC_Q)J[SK$JG+ZO9FP13Z/97Z:SQ=S:P2L%_X";.XC1/
MM86KE1VZ8H;$.AF CKJQ.B.6;BUN*!.FU+JI:#$&/*)\ >$B3LM[1,[)*D]
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
M0H/)M>50;9>VAI&U?^@[:6S;^&UI!QLHYV#O]U*:L^%ZIQ^5V5]02P,$%
M  @ TX-P5EF <E:> @  ^08  !D   !X;"]W;W)K<VAE971S+W-H965T-#<N
M>&ULK55=;],P%/TK5D!HDV#Y=-:,--+6@N !4:T,'A /3G+;6'/B8#MM]^^Q
MDRQT;5;VP$OB:]]S?(X_KN,M%_>R %!H5[)*3JU"J?K*MF560$GD!:^ATB,K
M+DJB="C6MJP%D+P%E<SV'">T2T(K*XG;OH5(8MXH1BM8""2;LB3BX088WTXM
MUWKLN*7K0ID..XEKLH8EJ+MZ(71D#RPY+:&2E%=(P&IJ7;M7L]#DMPG?*6SE
M7AL9)RGG]R;XG$\MQP@"!IDR#$3_-C #Q@R1EO&[Y[2&*0UPO_W(_K'UKKVD
M1,*,LQ\T5\74FE@HAQ5IF+KEVT_0^\&&+^-,ME^T[7*#R$)9(Q4O>[!64-*J
M^Y-=OPY[ #=X!N#U .^E +\'^*W13EEK:TX426+!MTB8;,UF&NW:M&CMAE9F
M%Y=*Z%&J<2I9ZF.1-PP07Z'K+!,-Y.C#3I\1"1*=S4$1RN0Y>H?NEG-T]OH\
MMI6>U6#MK)_AIIO!>V:&.607R'??(L_QO!'X[.5P]RG<UEX'P]Y@V&OY_&?X
M%N2!I$R;(U7>.29,HI_7J51"GZE?8P8[QF"<T=RS*UF3#*:6OD@2Q :LY,TK
M-W3>C]G]3V1/S/N#>?\4NS$O.&.(49)21A4%.>:W(\$MB2D#FR3P)CX.8GNS
M[^0XS0LP#J._>4]$!H/(X*3(.=5;0=-&<8$R7I94FI(Q*K0C"O<4N#BZ]/"!
MT.,T[$38<<9UXD$G/JGSJRI Z#K479I_+"D^DN 'H1].#I0>ITVB(,"3<:7A
MH#0\J?0;5X0-2J&_WF,RPZ,MC?P@""X/9!ZG^1,<A=@[T&GO%2;S*'PA8DTK
MB1BL--*YN-04HBNT7:!XW=:JE"M=^=IFH=\F$"9!CZ\X5X^!*7_#:Y?\ 5!+
M P04    " #3@W!6TG5I,: #  "4$   &0   'AL+W=O<FMS:&5E=',O<VAE
M970T."YX;6RU6%&/HS80_BL6K:H[J5VP R1L$Z1-LFU7ZE:KS6[OX70/#DP
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
M:3 A7#''%QTH.P#[UQ*W0E.Q$[1OQ.0/4$L#!!0    ( -.#<%;:>?T*0 ,
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
M&U27*+K RHJLO'0OS \QFY]&:ZWS2@ZC5%9:HXH,?=29^I/"PY"&'N;<8LO
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
MYZ>O^8UDF^P\<LFD9$EVN28X)%PW4+^O&).'&]U!>08^_1=02P,$%     @
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
MQM!H<(V7H=O1T!I6U5Z.*V51W'Y9X30%[1SP?*V4/1HN03^?\Q=02P,$%
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
M<6A4"H[<8R6,<6*T_C6"R0_L?@!02P,$%     @ TX-P5F2[1&:2!0  SRL
M  \   !X;"]W;W)K8F]O:RYX;6S%FEMOXC@4@/^*Q=.LU%T@%V:F*I5ZWTJ=
MH2K=[N/*)*9836S&=NCEU\]Q NU)"T?[XO0)R(TOQ[&_<^P</&KS,-/Z@3V5
MA;+CWL*YY7Z_;[.%*+G]2R^%@CUS;4KNX*>Y[]NE$3RW"R%<6?2CP6#4+[E4
MO<.#S;6N31__T$YD3FH%&_V&.RD>[=M^_Y.MI)4S64CW/.[5WPO18Z54LI0O
M(A_W!CUF%_KQ;VWDBU:.%]/,Z*(8]X;-CCMAG,P^;)YZR%L^L_46QV<W'$#&
MO=$ +CB7QKKZB/KZ'!A7 @YN?E5.G\O""7/*G;@PNEI*=>\O W?11[=1QV'S
MV01QW_R?,.KY7&;B5&=5*91KXFA$X0&57<BE[3'%2S'NG>B5,/Y^X \N\^;>
M'$"A2)E]"3O,95[CA4115A<RAW_/V3$ON,H$JT-H$6!$ $:?!LB^7',$&1.0
M<8>04P_A3[!,S]EDV6KJA(!,/@/2,YXLN+I'D"D!F7Y:)$^X72#($0$Y"@LY
M@>Z[\H,<5_Z9M++FNS;"PGG<(<BO!.37L)#3JBRY>?9D4WFO))S&H;F/LDQ7
MRDD$^8V _!:XN:%-]^J696>_*KGBA6_MO3JPYV"@-\CO!.3WL)#'E95*6,M.
M=#F3JCD #]\#:OP>A(4[Y]*P.UY4@OT0W%:FZ3 8C]1+8+] K@ #H'NN6]0W
M\=*?@.DHMPP#R^5"Z_Q1%D5-=PE]5]U[ G9D;5N 0THNP\!V@2YK*A@.SY[@
M(E:TN"B?# ,+Y4:LA*H$QJ',,0RLCC-N%&1TEL$#!QD"-RTR2A?#P+Z8.IT]
M_ FB@$:$,<2W8GT0YJ-,,0RLBDN5Z5*P6_[4?K@H,0Q#FT&7I72-_'WOA,3
M0>L*E<DV)"6&86 SU$\9NQ'+RF0+:%[( ?2]X25.G2DY1('E,*UF5ORJ?)IW
MMGJGA8C20A18"V1R\E^$,<G:(W3Q0:4G;4Q*$%%@06Q-4-@7J'P+8?_ E)0N
MHL"ZV)&I;#@Q)J61*+!&MF<L6Z-).24*[!0Z=6$8DU)+%%@M[W.7K7&D/!,%
M]LPZB=G*1:DE"JR6C]G,-L28LDL<VBX[TIHU*,:D7!,'=@W.;K;&D#),''QZ
MBTASV!>,2<YO!3;,KD1G2U-3BHD#*X9.*V*,22DF#JR8*5PCKV"P7L]JO4LQ
M,":EF#ATV8(PUUKQC^B5Y/7$/L:D%!,'5LR.[.=4."Z+E@EC2C1Q8-'@:*)4
M:!-8C$EY)PY=TN!GT\\+PS DU2LQGLJFW).$=@_&W(R9SG^U,F_/N%/N24+7
M.0AS2V*),2D+)8$MA#%?$\M-#\*N3"@)):$EA"@_9+Q[N*,GY#)+: GACEXY
MJ'/84:F-DR_O)WT22D))8 F1!42KMDTH"25=2NA#,7&*,2D))=VMMFPJBMDS
MNQ ^2UHN\&I+0DDHZ5!"IV(NC(%POI9 K6A2$DHZE)!?7\OJA_14%I5?%CS#
M2Y64A-+ $MI6HVW2CI\<2RBE))1V**')LJ[0CORK$1)<!+P8DY)0VJ&$)I4#
M#I5#=.'QM,[(#&-2%DH[M-"_W)BFP'@-)\:D+)1V:*$;D6FHAE[J)75?L\]P
MNIF2R_VA2Z&=<PAU1\*8E(72#BWD,;6J*_;-U +&I"R4AK80'C>%$G/IV-SH
M<@V*,2D+I9]AH5O^]''=-:4LE'9HH7^4>>M$'O481W-$66@4V$+M^2WD'\/]
M^V\8D[+0J$,+70D_A[1.XQIFC$E9:-2AA7YPR-ZE\S-Q,"+Y?M_"I"PTZM!"
M$[> _.-2-1?R@^<-QJ0L-.K00K>F7O5Y;AQ4MSK&I"PT"FVAG=.;[RTT(E\[
MJRW4KP^VAP<YC+]*Y#_A+RQLSWB171OF/YH77Y+4+U[/JZ(X@6T3=:5YOGD?
M=?,N[>%O4$L#!!0    ( -.#<%8>WYE>' (  #TG   :    >&PO7W)E;',O
M=V]R:V)O;VLN>&UL+G)E;'/-VDMNHT 4A>&M6"P@Y?NJ)*TXHYYDVLH&D%-^
M*+9!%*U.=M^6,[ /ZD%/(LX(%8C+/^$3 IY^E4,[[KM3W>W[NO@X'DYUU>S&
ML?^14EWORK&M=UU?3N<CFVXXMN-Y.6Q3WZ[?VVU)NESF--S.:)Z?;F<N7C_[
M\C\3N\UFORX_N_7O8SF-_QB<_G3#>]V5,C:+UW;8EG'5I(_#=7=-EXW<G2<W
MBY>W53.\O$F3Y@Y2"-+Y@PR";/X@AR"?/R@@*.8/RA"4YP^ZAZ#[^8,>(.AA
M_J!'"'J</TB6*..2(&F"-8'6@EP+@=>"8 N!V()D"X'9@F@+@=J"; N!VX)P
M"X'<@G0+@=V"> N!WHIZ*X'>BGHK@=XZ>=@FT%M1;R706U%O)=!;46\ET%M1
M;R706U%O)=!;46\ET%M1;R70VU!O(]#;4&\CT-M0;R/0VR8O2PCT-M3;"/0V
MU-L(]#;4VPCT-M3;"/0VU-L(]#;4VPCT=M3;"?1VU-L)]';4VPGT=M3;"?3V
MR<MN KT=]78"O1WU=@*]'?5V KT=]78"O1WU=@*] _4. KT#]0X"O0/U#@*]
M _4. KT#]0X"O6/RL9) [T"]@T#O0+V#0.] O8- [T"]@T#OC'IG KTSZIT)
M],ZH=R;0.Z/>F4#OC'IG KTSZIT)],Z3GTV^4^\Z?AY*O?9\K?'ZWTGU>#ZW
M7"]_67[MG-SC%YS3;45]_@M02P,$%     @ TX-P5J5_#G'N 0  D"8  !,
M  !;0V]N=&5N=%]4>7!E<UTN>&ULS=K+3L,P$ 707ZFR18WK)P_1;H ML. '
M3#*E49/8LETH?X^3 A((*E"1N)M&K>VY$X]T5CV_>_84)]NN[>.\6*7DSQB+
MU8HZ&TOGJ<\K2Q<ZF_+7\,"\K=;V@9B8S0RK7)^H3],TU"@6YY>TM)LV3:ZV
M^>?8N'Y>!&IC,;G8;1RRYH7UOFTJF_(Z>^SK3RG3UX0RGQSWQ%7CXU'>4+ O
M$X:5[P->S]T\4@A-39-;&]*U[?(NMFU93,\MQ7)_B2]Z=,ME4U'MJDV7CY31
M![)U7!&EKBUW18_V)Z=\P[3[Y ?GCV7V!>:=M\'YF"<6Z/=Q;R,93D]]+D0A
M-?M?\3TQES[X_6B8=DWU#[/S]3ZYL![G$=GX./R./\[XO?XO^Q @?4B0/A1(
M'QJD#P/2QS%('R<@?9R"],%G*(V@B,I12.4HIG(45#F*JAR%58[B*D>!E:/(
M*E!D%2BR"A19!8JL D56@2*K0)%5H,@J4&05*+)*%%DEBJP215:)(JM$D56B
MR"I19)4HLDH4626*K I%5H4BJT*15:'(JE!D52BR*A19%8JL"D56A2*K1I%5
MH\BJ4635*+)J%%DUBJP:15:-(JM&D56CR&I09#4HLAH460V*K 9%5H,BJ_E/
M6>^=6_]Q_/@L.]OT;_EL_"/:X@502P$"% ,4    " #3@W!6!T%-8H$   "Q
M    $               @ $     9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0
M   ( -.#<%;!V-'L[0   "L"   1              "  :\   !D;V-0<F]P
M<R]C;W)E+GAM;%!+ 0(4 Q0    ( -.#<%:97)PC$ 8  )PG   3
M      "  <L!  !X;"]T:&5M92]T:&5M93$N>&UL4$L! A0#%     @ TX-P
M5BI'/)Q1!P  BS   !@              ("!# @  'AL+W=O<FMS:&5E=',O
M<VAE970Q+GAM;%!+ 0(4 Q0    ( -.#<%;YJ>DHH <  /0B   8
M      " @9,/  !X;"]W;W)K<VAE971S+W-H965T,BYX;6Q02P$"% ,4
M" #3@W!6>CJ;$A #  "W"@  &               @(%I%P  >&PO=V]R:W-H
M965T<R]S:&5E=#,N>&UL4$L! A0#%     @ TX-P5@;M(C"E!@  F!L  !@
M             ("!KQH  'AL+W=O<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4
M Q0    ( -.#<%8#1KH[70<  (0Y   8              " @8HA  !X;"]W
M;W)K<VAE971S+W-H965T-2YX;6Q02P$"% ,4    " #3@W!6+>:_OK8(   H
M)P  &               @($=*0  >&PO=V]R:W-H965T<R]S:&5E=#8N>&UL
M4$L! A0#%     @ TX-P5@"LS]47!0  Q L  !@              ("!"3(
M 'AL+W=O<FMS:&5E=',O<VAE970W+GAM;%!+ 0(4 Q0    ( -.#<%:H?L4!
MOQ4  &P]   8              " @58W  !X;"]W;W)K<VAE971S+W-H965T
M."YX;6Q02P$"% ,4    " #3@W!6K8FN[I0#  """   &
M@(%+30  >&PO=V]R:W-H965T<R]S:&5E=#DN>&UL4$L! A0#%     @ TX-P
M5G,X+E'"!@  ;P\  !D              ("!%5$  'AL+W=O<FMS:&5E=',O
M<VAE970Q,"YX;6Q02P$"% ,4    " #3@W!6M88]@'@(   0&0  &0
M        @($.6   >&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0
M   ( -.#<%9"-P8F P,  &T&   9              " @;U@  !X;"]W;W)K
M<VAE971S+W-H965T,3(N>&UL4$L! A0#%     @ TX-P5J$(HS>B!0  <0X
M !D              ("!]V,  'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q0
M2P$"% ,4    " #3@W!6>I0S6:("  #5!0  &0              @('0:0
M>&PO=V]R:W-H965T<R]S:&5E=#$T+GAM;%!+ 0(4 Q0    ( -.#<%8S"_K;
MO ,  ( (   9              " @:EL  !X;"]W;W)K<VAE971S+W-H965T
M,34N>&UL4$L! A0#%     @ TX-P5HP]8_R( P  XP<  !D
M ("!G'   'AL+W=O<FMS:&5E=',O<VAE970Q-BYX;6Q02P$"% ,4    " #3
M@W!6P;QC4>$'  #&%0  &0              @(%;=   >&PO=V]R:W-H965T
M<R]S:&5E=#$W+GAM;%!+ 0(4 Q0    ( -.#<%:H&O6/DP<  +$1   9
M          " @7-\  !X;"]W;W)K<VAE971S+W-H965T,3@N>&UL4$L! A0#
M%     @ TX-P5M)^ 'ZT!@  BP\  !D              ("!/80  'AL+W=O
M<FMS:&5E=',O<VAE970Q.2YX;6Q02P$"% ,4    " #3@W!6KN%E;V@#  "/
M!P  &0              @($HBP  >&PO=V]R:W-H965T<R]S:&5E=#(P+GAM
M;%!+ 0(4 Q0    ( -.#<%:-V)6""P(  +0$   9              " @<>.
M  !X;"]W;W)K<VAE971S+W-H965T,C$N>&UL4$L! A0#%     @ TX-P5ER\
M[3DP%P  24<  !D              ("!"9$  'AL+W=O<FMS:&5E=',O<VAE
M970R,BYX;6Q02P$"% ,4    " #3@W!63%HR 78#   )"   &0
M    @(%PJ   >&PO=V]R:W-H965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    (
M -.#<%:A<=\,DP0   T*   9              " @1VL  !X;"]W;W)K<VAE
M971S+W-H965T,C0N>&UL4$L! A0#%     @ TX-P5BAL2D,*!@  :A$  !D
M             ("!Y[   'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6Q02P$"
M% ,4    " #3@W!6[R!C=_X"  !<!@  &0              @($HMP  >&PO
M=V]R:W-H965T<R]S:&5E=#(V+GAM;%!+ 0(4 Q0    ( -.#<%8(2F(![0,
M ,0*   9              " @5VZ  !X;"]W;W)K<VAE971S+W-H965T,C<N
M>&UL4$L! A0#%     @ TX-P5H(<\K"C @  T 4  !D              ("!
M@;X  'AL+W=O<FMS:&5E=',O<VAE970R."YX;6Q02P$"% ,4    " #3@W!6
MEXWDW,<#   /"0  &0              @(%;P0  >&PO=V]R:W-H965T<R]S
M:&5E=#(Y+GAM;%!+ 0(4 Q0    ( -.#<%9;"7/Z+@,  "P'   9
M      " @5G%  !X;"]W;W)K<VAE971S+W-H965T,S N>&UL4$L! A0#%
M  @ TX-P5@U.&PC$!0  KQ   !D              ("!OL@  'AL+W=O<FMS
M:&5E=',O<VAE970S,2YX;6Q02P$"% ,4    " #3@W!6L&)PO*4&  #O$
M&0              @(&YS@  >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+
M 0(4 Q0    ( -.#<%;M'J^ZV@,  .()   9              " @975  !X
M;"]W;W)K<VAE971S+W-H965T,S,N>&UL4$L! A0#%     @ TX-P5D8/Z8EE
M @  3P4  !D              ("!IMD  'AL+W=O<FMS:&5E=',O<VAE970S
M-"YX;6Q02P$"% ,4    " #3@W!6EQ$QL4T&  !X*   &0
M@(%"W   >&PO=V]R:W-H965T<R]S:&5E=#,U+GAM;%!+ 0(4 Q0    ( -.#
M<%87GQV*,P8  #TN   9              " @<;B  !X;"]W;W)K<VAE971S
M+W-H965T,S8N>&UL4$L! A0#%     @ TX-P5CK:U6,-"0  ZD(  !D
M         ("!,.D  'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6Q02P$"% ,4
M    " #3@W!6,YF*1:4$  !2%0  &0              @(%T\@  >&PO=V]R
M:W-H965T<R]S:&5E=#,X+GAM;%!+ 0(4 Q0    ( -.#<%;#XO,KGP4  "HJ
M   9              " @5#W  !X;"]W;W)K<VAE971S+W-H965T,SDN>&UL
M4$L! A0#%     @ TX-P5B&AB4;$ @  R@8  !D              ("!)OT
M 'AL+W=O<FMS:&5E=',O<VAE970T,"YX;6Q02P$"% ,4    " #3@W!6KE]$
M0T<%  "A)   &0              @($A  $ >&PO=V]R:W-H965T<R]S:&5E
M=#0Q+GAM;%!+ 0(4 Q0    ( -.#<%9&N ?KT@0  /,@   9
M  " @9\% 0!X;"]W;W)K<VAE971S+W-H965T-#(N>&UL4$L! A0#%     @
MTX-P5E$/[2/, @  00@  !D              ("!J H! 'AL+W=O<FMS:&5E
M=',O<VAE970T,RYX;6Q02P$"% ,4    " #3@W!6E'[V8NP#  "R$0  &0
M            @(&K#0$ >&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;%!+ 0(4
M Q0    ( -.#<%;8J&\8/ (   4%   9              " @<X1 0!X;"]W
M;W)K<VAE971S+W-H965T-#4N>&UL4$L! A0#%     @ TX-P5HY/+<\> @
M-@4  !D              ("!010! 'AL+W=O<FMS:&5E=',O<VAE970T-BYX
M;6Q02P$"% ,4    " #3@W!668!R5IX"  #Y!@  &0              @(&6
M%@$ >&PO=V]R:W-H965T<R]S:&5E=#0W+GAM;%!+ 0(4 Q0    ( -.#<%;2
M=6DQH ,  )00   9              " @6L9 0!X;"]W;W)K<VAE971S+W-H
M965T-#@N>&UL4$L! A0#%     @ TX-P5N6[Z@1! P  +PH  !D
M     ("!0AT! 'AL+W=O<FMS:&5E=',O<VAE970T.2YX;6Q02P$"% ,4
M" #3@W!6VGG]"D #  !J"0  &0              @(&Z( $ >&PO=V]R:W-H
M965T<R]S:&5E=#4P+GAM;%!+ 0(4 Q0    ( -.#<%;)=3].I ,  ) 2   9
M              " @3$D 0!X;"]W;W)K<VAE971S+W-H965T-3$N>&UL4$L!
M A0#%     @ TX-P5D6H5PR[!   M1D  !D              ("!#"@! 'AL
M+W=O<FMS:&5E=',O<VAE970U,BYX;6Q02P$"% ,4    " #3@W!6<T ^<<D#
M   O#0  &0              @('^+ $ >&PO=V]R:W-H965T<R]S:&5E=#4S
M+GAM;%!+ 0(4 Q0    ( -.#<%:GF,%;S@0  *\9   9              "
M@?XP 0!X;"]W;W)K<VAE971S+W-H965T-30N>&UL4$L! A0#%     @ TX-P
M5H>9EX9G P  [@X  !D              ("! S8! 'AL+W=O<FMS:&5E=',O
M<VAE970U-2YX;6Q02P$"% ,4    " #3@W!6Z* <DRD%   /'P  &0
M        @(&A.0$ >&PO=V]R:W-H965T<R]S:&5E=#4V+GAM;%!+ 0(4 Q0
M   ( -.#<%8@"28F+P,  #X*   9              " @0$_ 0!X;"]W;W)K
M<VAE971S+W-H965T-3<N>&UL4$L! A0#%     @ TX-P5LEZT+LT!   Y X
M !D              ("!9T(! 'AL+W=O<FMS:&5E=',O<VAE970U."YX;6Q0
M2P$"% ,4    " #3@W!6>11-^TT$  "T$0  &0              @('21@$
M>&PO=V]R:W-H965T<R]S:&5E=#4Y+GAM;%!+ 0(4 Q0    ( -.#<%9X80">
M.0,  +T)   9              " @59+ 0!X;"]W;W)K<VAE971S+W-H965T
M-C N>&UL4$L! A0#%     @ TX-P5LV#%EO2 @  P0@  !D
M ("!QDX! 'AL+W=O<FMS:&5E=',O<VAE970V,2YX;6Q02P$"% ,4    " #3
M@W!6(!36OVP"  "R!0  &0              @('/40$ >&PO=V]R:W-H965T
M<R]S:&5E=#8R+GAM;%!+ 0(4 Q0    ( -.#<%:S;F*N7 ,  ((-   9
M          " @7)4 0!X;"]W;W)K<VAE971S+W-H965T-C,N>&UL4$L! A0#
M%     @ TX-P5B6BYNV= @  +@8  !D              ("!!5@! 'AL+W=O
M<FMS:&5E=',O<VAE970V-"YX;6Q02P$"% ,4    " #3@W!6H>,)L5T"  "K
M!0  &0              @('96@$ >&PO=V]R:W-H965T<R]S:&5E=#8U+GAM
M;%!+ 0(4 Q0    ( -.#<%:?.:(2% (  # $   9              " @6U=
M 0!X;"]W;W)K<VAE971S+W-H965T-C8N>&UL4$L! A0#%     @ TX-P5L?
M3SH] P  TA,   T              ( !N%\! 'AL+W-T>6QE<RYX;6Q02P$"
M% ,4    " #3@W!6EXJ[',     3 @  "P              @ $@8P$ 7W)E
M;',O+G)E;'-02P$"% ,4    " #3@W!69+M$9I(%  #/*P  #P
M    @ $)9 $ >&PO=V]R:V)O;VLN>&UL4$L! A0#%     @ TX-P5A[?F5X<
M @  /2<  !H              ( !R&D! 'AL+U]R96QS+W=O<FMB;V]K+GAM
M;"YR96QS4$L! A0#%     @ TX-P5J5_#G'N 0  D"8  !,
M ( !'&P! %M#;VYT96YT7U1Y<&5S72YX;6Q02P4&     $H 2@ ]%   .VX!
#

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>81
<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>82
<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>83
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.22.4</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>148</ContextCount>
  <ElementCount>390</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>58</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>5</UnitCount>
  <MyReports>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>00000001 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>00000002 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/BalanceSheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>00000003 - Statement - Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/BalanceSheetsParenthetical</Role>
      <ShortName>Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>00000004 - Statement - Consolidated Statements of Operations and Comprehensive Income (Loss)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss</Role>
      <ShortName>Consolidated Statements of Operations and Comprehensive Income (Loss)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>00000005 - Statement - Consolidated Statement of Changes in Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity</Role>
      <ShortName>Consolidated Statement of Changes in Stockholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>00000006 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/StatementsOfCashFlows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>00000007 - Disclosure - Overview and Basis of Presentation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/OverviewAndBasisOfPresentation</Role>
      <ShortName>Overview and Basis of Presentation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>00000008 - Disclosure - Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/SummaryOfSignificantAccountingPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>00000009 - Disclosure - Cash, Cash Equivalents, and Financial Instruments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstruments</Role>
      <ShortName>Cash, Cash Equivalents, and Financial Instruments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>00000010 - Disclosure - Business Combinations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/BusinessCombinations</Role>
      <ShortName>Business Combinations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>00000011 - Disclosure - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/FairValueMeasurements</Role>
      <ShortName>Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>00000012 - Disclosure - Property and Equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/PropertyAndEquipment</Role>
      <ShortName>Property and Equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>00000013 - Disclosure - Goodwill and Intangible Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/GoodwillAndIntangibleAssets</Role>
      <ShortName>Goodwill and Intangible Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>00000014 - Disclosure - Accrued Expenses</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/AccruedExpenses</Role>
      <ShortName>Accrued Expenses</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>00000015 - Disclosure - Revenue</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/Revenue</Role>
      <ShortName>Revenue</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>00000016 - Disclosure - Earnings per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/EarningsPerShare</Role>
      <ShortName>Earnings per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>00000017 - Disclosure - Stock-Based Compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/Stock-basedCompensation</Role>
      <ShortName>Stock-Based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>00000018 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>00000019 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/CommitmentsAndContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>00000020 - Disclosure - Share Repurchase Program</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ShareRepurchaseProgram</Role>
      <ShortName>Share Repurchase Program</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>00000021 - Disclosure - Subsequent Events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/SubsequentEvents</Role>
      <ShortName>Subsequent Events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>00000022 - Disclosure - Summary of Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>22</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>00000023 - Disclosure - Cash, Cash Equivalents, and Financial Instruments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstrumentsTables</Role>
      <ShortName>Cash, Cash Equivalents, and Financial Instruments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstruments</ParentRole>
      <Position>23</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>00000024 - Disclosure - Business Combinations (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/BusinessCombinationsTables</Role>
      <ShortName>Business Combinations (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/BusinessCombinations</ParentRole>
      <Position>24</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>00000025 - Disclosure - Fair Value Measurements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/FairValueMeasurementsTables</Role>
      <ShortName>Fair Value Measurements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/FairValueMeasurements</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>00000026 - Disclosure - Property and Equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/PropertyAndEquipmentTables</Role>
      <ShortName>Property and Equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/PropertyAndEquipment</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>00000027 - Disclosure - Goodwill and Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/GoodwillAndIntangibleAssetsTables</Role>
      <ShortName>Goodwill and Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/GoodwillAndIntangibleAssets</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>00000028 - Disclosure - Accrued Expenses (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/AccruedExpensesTables</Role>
      <ShortName>Accrued Expenses (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/AccruedExpenses</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>00000029 - Disclosure - Revenue (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/RevenueTables</Role>
      <ShortName>Revenue (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/Revenue</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>00000030 - Disclosure - Earnings per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/EarningsPerShareTables</Role>
      <ShortName>Earnings per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/EarningsPerShare</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>00000031 - Disclosure - Stock-Based Compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/Stock-basedCompensationTables</Role>
      <ShortName>Stock-Based Compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/Stock-basedCompensation</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>00000032 - Disclosure - Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/IncomeTaxesTables</Role>
      <ShortName>Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/IncomeTaxes</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>00000033 - Disclosure - Commitments and Contingencies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/CommitmentsAndContingenciesTables</Role>
      <ShortName>Commitments and Contingencies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/CommitmentsAndContingencies</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>00000034 - Disclosure - Share Repurchase Program (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ShareRepurchaseProgramTables</Role>
      <ShortName>Share Repurchase Program (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/ShareRepurchaseProgram</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>00000035 - Disclosure - Summary of Significant Accounting Policies (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative</Role>
      <ShortName>Summary of Significant Accounting Policies (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>00000036 - Disclosure - Schedule of Cash, Cash Equivalents, and Marketable Investment Securities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails</Role>
      <ShortName>Schedule of Cash, Cash Equivalents, and Marketable Investment Securities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>00000037 - Disclosure - Schedule of Assets and Liabilities assumed (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails</Role>
      <ShortName>Schedule of Assets and Liabilities assumed (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>37</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>00000038 - Disclosure - Business Combinations (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative</Role>
      <ShortName>Business Combinations (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/BusinessCombinationsTables</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>00000039 - Disclosure - Schedule of Fair Value Assets and Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails</Role>
      <ShortName>Schedule of Fair Value Assets and Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>00000040 - Disclosure - Schedule of Changes in Fair Value Measurement (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfChangesInFairValueMeasurementDetails</Role>
      <ShortName>Schedule of Changes in Fair Value Measurement (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>00000041 - Disclosure - Schedule of Contingent Consideration Common Stock and Warrants (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails</Role>
      <ShortName>Schedule of Contingent Consideration Common Stock and Warrants (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>00000042 - Disclosure - Schedule of Property and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails</Role>
      <ShortName>Schedule of Property and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>00000043 - Disclosure - Schedule of Goodwill (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfGoodwillDetails</Role>
      <ShortName>Schedule of Goodwill (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>00000044 - Disclosure - Schedule of Intangible Assets, Net (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails</Role>
      <ShortName>Schedule of Intangible Assets, Net (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>00000045 - Disclosure - Schedule of Future Amortization Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails</Role>
      <ShortName>Schedule of Future Amortization Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>00000046 - Disclosure - Goodwill and Intangible Assets (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/GoodwillAndIntangibleAssetsDetailsNarrative</Role>
      <ShortName>Goodwill and Intangible Assets (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/GoodwillAndIntangibleAssetsTables</ParentRole>
      <Position>46</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>00000047 - Disclosure - Schedule of Accrued Expenses (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails</Role>
      <ShortName>Schedule of Accrued Expenses (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>00000048 - Disclosure - Summary of Revenue by Geographic Area (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails</Role>
      <ShortName>Summary of Revenue by Geographic Area (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>00000049 - Disclosure - Schedule of Deferred Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfDeferredRevenueDetails</Role>
      <ShortName>Schedule of Deferred Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>00000050 - Disclosure - Schedule of Basic and Diluted Earnings Per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails</Role>
      <ShortName>Schedule of Basic and Diluted Earnings Per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>00000051 - Disclosure - Earnings per Share (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/EarningsPerShareDetailsNarrative</Role>
      <ShortName>Earnings per Share (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/EarningsPerShareTables</ParentRole>
      <Position>51</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>00000052 - Disclosure - Schedule of Option Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfOptionActivityDetails</Role>
      <ShortName>Schedule of Option Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>00000053 - Disclosure - Schedule of Outstanding Restricted Stock Units and Related Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails</Role>
      <ShortName>Schedule of Outstanding Restricted Stock Units and Related Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>00000054 - Disclosure - Schedule of Warrant Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails</Role>
      <ShortName>Schedule of Warrant Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>00000055 - Disclosure - Schedule of Recognized Stock-based Compensation Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails</Role>
      <ShortName>Schedule of Recognized Stock-based Compensation Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>00000056 - Disclosure - Stock-Based Compensation (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative</Role>
      <ShortName>Stock-Based Compensation (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/Stock-basedCompensationTables</ParentRole>
      <Position>56</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>00000057 - Disclosure - Schedule of Components Income Tax Provision (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails</Role>
      <ShortName>Schedule of Components Income Tax Provision (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>00000058 - Disclosure - Schedule of Benefit from Income Taxes and Effective Tax Rates (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails</Role>
      <ShortName>Schedule of Benefit from Income Taxes and Effective Tax Rates (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>00000059 - Disclosure - Schedule of Deferred Tax Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails</Role>
      <ShortName>Schedule of Deferred Tax Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>00000060 - Disclosure - Schedule of Unrecognized Tax Benefits (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfUnrecognizedTaxBenefitsDetails</Role>
      <ShortName>Schedule of Unrecognized Tax Benefits (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>00000061 - Disclosure - Income Taxes (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/IncomeTaxesDetailsNarrative</Role>
      <ShortName>Income Taxes (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/IncomeTaxesTables</ParentRole>
      <Position>61</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>00000062 - Disclosure - Schedule of Lease Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails</Role>
      <ShortName>Schedule of Lease Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>00000063 - Disclosure - Schedule of Maturities on Company Lease Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails</Role>
      <ShortName>Schedule of Maturities on Company Lease Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>00000064 - Disclosure - Schedule of Other Information Related to Operating Lease (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfOtherInformationRelatedToOperatingLeaseDetails</Role>
      <ShortName>Schedule of Other Information Related to Operating Lease (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>00000065 - Disclosure - Schedule of Treasury Stock (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ScheduleOfTreasuryStockDetails</Role>
      <ShortName>Schedule of Treasury Stock (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="form10-k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>00000066 - Disclosure - Share Repurchase Program (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://codiagnostics.com/role/ShareRepurchaseProgramDetailsNarrative</Role>
      <ShortName>Share Repurchase Program (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://codiagnostics.com/role/ShareRepurchaseProgramTables</ParentRole>
      <Position>66</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="10-K" original="form10-k.htm">form10-k.htm</File>
    <File>codx-20221231.xsd</File>
    <File>codx-20221231_cal.xml</File>
    <File>codx-20221231_def.xml</File>
    <File>codx-20221231_lab.xml</File>
    <File>codx-20221231_pre.xml</File>
    <File>ex21-1.htm</File>
    <File>ex23-1.htm</File>
    <File>ex31-1.htm</File>
    <File>ex31-2.htm</File>
    <File>ex32-1.htm</File>
    <File>ex32-2.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="807">http://fasb.org/us-gaap/2022</BaseTaxonomy>
    <BaseTaxonomy items="37">http://xbrl.sec.gov/dei/2022</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>85
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "form10-k.htm": {
   "axisCustom": 0,
   "axisStandard": 21,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2022": 807,
    "http://xbrl.sec.gov/dei/2022": 37
   },
   "contextCount": 148,
   "dts": {
    "calculationLink": {
     "local": [
      "codx-20221231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "codx-20221231_def.xml"
     ]
    },
    "inline": {
     "local": [
      "form10-k.htm"
     ]
    },
    "labelLink": {
     "local": [
      "codx-20221231_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "codx-20221231_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "codx-20221231.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://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-roles-2022.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd",
      "https://xbrl.fasb.org/srt/2022q3/srt-sup-2022q3.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022q3/us-gaap-sup-2022q3.xsd",
      "https://xbrl.sec.gov/country/2022/country-2022.xsd",
      "https://xbrl.sec.gov/dei/2022/dei-2022.xsd"
     ]
    }
   },
   "elementCount": 579,
   "entityCount": 1,
   "hidden": {
    "http://codiagnostics.com/20221231": 29,
    "http://fasb.org/us-gaap/2022": 163,
    "http://xbrl.sec.gov/dei/2022": 3,
    "total": 195
   },
   "keyCustom": 54,
   "keyStandard": 336,
   "memberCustom": 16,
   "memberStandard": 40,
   "nsprefix": "CODX",
   "nsuri": "http://codiagnostics.com/20221231",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "b",
       "span",
       "p",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "00000001 - Document - Cover",
     "menuCat": "Cover",
     "order": "1",
     "role": "http://codiagnostics.com/role/Cover",
     "shortName": "Cover",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "b",
       "span",
       "p",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000010 - Disclosure - Business Combinations",
     "menuCat": "Notes",
     "order": "10",
     "role": "http://codiagnostics.com/role/BusinessCombinations",
     "shortName": "Business Combinations",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000011 - Disclosure - Fair Value Measurements",
     "menuCat": "Notes",
     "order": "11",
     "role": "http://codiagnostics.com/role/FairValueMeasurements",
     "shortName": "Fair Value Measurements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000012 - Disclosure - Property and Equipment",
     "menuCat": "Notes",
     "order": "12",
     "role": "http://codiagnostics.com/role/PropertyAndEquipment",
     "shortName": "Property and Equipment",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000013 - Disclosure - Goodwill and Intangible Assets",
     "menuCat": "Notes",
     "order": "13",
     "role": "http://codiagnostics.com/role/GoodwillAndIntangibleAssets",
     "shortName": "Goodwill and Intangible Assets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000014 - Disclosure - Accrued Expenses",
     "menuCat": "Notes",
     "order": "14",
     "role": "http://codiagnostics.com/role/AccruedExpenses",
     "shortName": "Accrued Expenses",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000015 - Disclosure - Revenue",
     "menuCat": "Notes",
     "order": "15",
     "role": "http://codiagnostics.com/role/Revenue",
     "shortName": "Revenue",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000016 - Disclosure - Earnings per Share",
     "menuCat": "Notes",
     "order": "16",
     "role": "http://codiagnostics.com/role/EarningsPerShare",
     "shortName": "Earnings per Share",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000017 - Disclosure - Stock-Based Compensation",
     "menuCat": "Notes",
     "order": "17",
     "role": "http://codiagnostics.com/role/Stock-basedCompensation",
     "shortName": "Stock-Based Compensation",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000018 - Disclosure - Income Taxes",
     "menuCat": "Notes",
     "order": "18",
     "role": "http://codiagnostics.com/role/IncomeTaxes",
     "shortName": "Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000019 - Disclosure - Commitments and Contingencies",
     "menuCat": "Notes",
     "order": "19",
     "role": "http://codiagnostics.com/role/CommitmentsAndContingencies",
     "shortName": "Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00000002 - Statement - Consolidated Balance Sheets",
     "menuCat": "Statements",
     "order": "2",
     "role": "http://codiagnostics.com/role/BalanceSheets",
     "shortName": "Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:MarketableSecuritiesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000020 - Disclosure - Share Repurchase Program",
     "menuCat": "Notes",
     "order": "20",
     "role": "http://codiagnostics.com/role/ShareRepurchaseProgram",
     "shortName": "Share Repurchase Program",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000021 - Disclosure - Subsequent Events",
     "menuCat": "Notes",
     "order": "21",
     "role": "http://codiagnostics.com/role/SubsequentEvents",
     "shortName": "Subsequent Events",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000022 - Disclosure - Summary of Significant Accounting Policies (Policies)",
     "menuCat": "Policies",
     "order": "22",
     "role": "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies",
     "shortName": "Summary of Significant Accounting Policies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:CashCashEquivalentsAndMarketableSecuritiesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000023 - Disclosure - Cash, Cash Equivalents, and Financial Instruments (Tables)",
     "menuCat": "Tables",
     "order": "23",
     "role": "http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstrumentsTables",
     "shortName": "Cash, Cash Equivalents, and Financial Instruments (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:CashCashEquivalentsAndMarketableSecuritiesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000024 - Disclosure - Business Combinations (Tables)",
     "menuCat": "Tables",
     "order": "24",
     "role": "http://codiagnostics.com/role/BusinessCombinationsTables",
     "shortName": "Business Combinations (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:FairValueDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000025 - Disclosure - Fair Value Measurements (Tables)",
     "menuCat": "Tables",
     "order": "25",
     "role": "http://codiagnostics.com/role/FairValueMeasurementsTables",
     "shortName": "Fair Value Measurements (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:FairValueDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000026 - Disclosure - Property and Equipment (Tables)",
     "menuCat": "Tables",
     "order": "26",
     "role": "http://codiagnostics.com/role/PropertyAndEquipmentTables",
     "shortName": "Property and Equipment (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000027 - Disclosure - Goodwill and Intangible Assets (Tables)",
     "menuCat": "Tables",
     "order": "27",
     "role": "http://codiagnostics.com/role/GoodwillAndIntangibleAssetsTables",
     "shortName": "Goodwill and Intangible Assets (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000028 - Disclosure - Accrued Expenses (Tables)",
     "menuCat": "Tables",
     "order": "28",
     "role": "http://codiagnostics.com/role/AccruedExpensesTables",
     "shortName": "Accrued Expenses (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000029 - Disclosure - Revenue (Tables)",
     "menuCat": "Tables",
     "order": "29",
     "role": "http://codiagnostics.com/role/RevenueTables",
     "shortName": "Revenue (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USDPShares",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00000003 - Statement - Consolidated Balance Sheets (Parenthetical)",
     "menuCat": "Statements",
     "order": "3",
     "role": "http://codiagnostics.com/role/BalanceSheetsParenthetical",
     "shortName": "Consolidated Balance Sheets (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USDPShares",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000030 - Disclosure - Earnings per Share (Tables)",
     "menuCat": "Tables",
     "order": "30",
     "role": "http://codiagnostics.com/role/EarningsPerShareTables",
     "shortName": "Earnings per Share (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000031 - Disclosure - Stock-Based Compensation (Tables)",
     "menuCat": "Tables",
     "order": "31",
     "role": "http://codiagnostics.com/role/Stock-basedCompensationTables",
     "shortName": "Stock-Based Compensation (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000032 - Disclosure - Income Taxes (Tables)",
     "menuCat": "Tables",
     "order": "32",
     "role": "http://codiagnostics.com/role/IncomeTaxesTables",
     "shortName": "Income Taxes (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000033 - Disclosure - Commitments and Contingencies (Tables)",
     "menuCat": "Tables",
     "order": "33",
     "role": "http://codiagnostics.com/role/CommitmentsAndContingenciesTables",
     "shortName": "Commitments and Contingencies (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "CODX:ScheduleOfTreasuryStockTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000034 - Disclosure - Share Repurchase Program (Tables)",
     "menuCat": "Tables",
     "order": "34",
     "role": "http://codiagnostics.com/role/ShareRepurchaseProgramTables",
     "shortName": "Share Repurchase Program (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "CODX:ScheduleOfTreasuryStockTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:TradeAndOtherAccountsReceivablePolicy",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsReceivableGrossCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000035 - Disclosure - Summary of Significant Accounting Policies (Details Narrative)",
     "menuCat": "Details",
     "order": "35",
     "role": "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative",
     "shortName": "Summary of Significant Accounting Policies (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:TradeAndOtherAccountsReceivablePolicy",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsReceivableGrossCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock",
       "us-gaap:CashCashEquivalentsAndMarketableSecuritiesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:TradingSecuritiesDebtAmortizedCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000036 - Disclosure - Schedule of Cash, Cash Equivalents, and Marketable Investment Securities (Details)",
     "menuCat": "Details",
     "order": "36",
     "role": "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails",
     "shortName": "Schedule of Cash, Cash Equivalents, and Marketable Investment Securities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock",
       "us-gaap:CashCashEquivalentsAndMarketableSecuritiesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:TradingSecuritiesDebtAmortizedCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockIssuedDuringPeriodValueAcquisitions",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000037 - Disclosure - Schedule of Assets and Liabilities assumed (Details)",
     "menuCat": "Details",
     "order": "37",
     "role": "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails",
     "shortName": "Schedule of Assets and Liabilities assumed (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2021-12-302021-12-31_custom_AdvancedConceptionsIncAndIdahoMolecularIncMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:StockIssuedDuringPeriodValueAcquisitions",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "CODX:RemeasurementOfAcquisitionContingencies",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000038 - Disclosure - Business Combinations (Details Narrative)",
     "menuCat": "Details",
     "order": "38",
     "role": "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative",
     "shortName": "Business Combinations (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "CODX:RemeasurementOfAcquisitionContingencies",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock",
       "us-gaap:CashCashEquivalentsAndMarketableSecuritiesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:MarketableSecurities",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000039 - Disclosure - Schedule of Fair Value Assets and Liabilities (Details)",
     "menuCat": "Details",
     "order": "39",
     "role": "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails",
     "shortName": "Schedule of Fair Value Assets and Liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock",
       "us-gaap:FairValueDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31_us-gaap_FairValueMeasurementsRecurringMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00000004 - Statement - Consolidated Statements of Operations and Comprehensive Income (Loss)",
     "menuCat": "Statements",
     "order": "4",
     "role": "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss",
     "shortName": "Consolidated Statements of Operations and Comprehensive Income (Loss)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
       "us-gaap:FairValueDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000040 - Disclosure - Schedule of Changes in Fair Value Measurement (Details)",
     "menuCat": "Details",
     "order": "40",
     "role": "http://codiagnostics.com/role/ScheduleOfChangesInFairValueMeasurementDetails",
     "shortName": "Schedule of Changes in Fair Value Measurement (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
       "us-gaap:FairValueDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock",
       "us-gaap:FairValueDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:WarrantsAndRightsOutstandingTerm",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000041 - Disclosure - Schedule of Contingent Consideration Common Stock and Warrants (Details)",
     "menuCat": "Details",
     "order": "41",
     "role": "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails",
     "shortName": "Schedule of Contingent Consideration Common Stock and Warrants (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock",
       "us-gaap:FairValueDisclosuresTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:WarrantsAndRightsOutstandingTerm",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000042 - Disclosure - Schedule of Property and Equipment (Details)",
     "menuCat": "Details",
     "order": "42",
     "role": "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails",
     "shortName": "Schedule of Property and Equipment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000043 - Disclosure - Schedule of Goodwill (Details)",
     "menuCat": "Details",
     "order": "43",
     "role": "http://codiagnostics.com/role/ScheduleOfGoodwillDetails",
     "shortName": "Schedule of Goodwill (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:GoodwillTranslationAndPurchaseAccountingAdjustments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000044 - Disclosure - Schedule of Intangible Assets, Net (Details)",
     "menuCat": "Details",
     "order": "44",
     "role": "http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails",
     "shortName": "Schedule of Intangible Assets, Net (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000045 - Disclosure - Schedule of Future Amortization Expense (Details)",
     "menuCat": "Details",
     "order": "45",
     "role": "http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails",
     "shortName": "Schedule of Future Amortization Expense (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000046 - Disclosure - Goodwill and Intangible Assets (Details Narrative)",
     "menuCat": "Details",
     "order": "46",
     "role": "http://codiagnostics.com/role/GoodwillAndIntangibleAssetsDetailsNarrative",
     "shortName": "Goodwill and Intangible Assets (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccruedPayrollTaxesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000047 - Disclosure - Schedule of Accrued Expenses (Details)",
     "menuCat": "Details",
     "order": "47",
     "role": "http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails",
     "shortName": "Schedule of Accrued Expenses (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccruedPayrollTaxesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000048 - Disclosure - Summary of Revenue by Geographic Area (Details)",
     "menuCat": "Details",
     "order": "48",
     "role": "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails",
     "shortName": "Summary of Revenue by Geographic Area (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:ContractWithCustomerLiability",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000049 - Disclosure - Schedule of Deferred Revenue (Details)",
     "menuCat": "Details",
     "order": "49",
     "role": "http://codiagnostics.com/role/ScheduleOfDeferredRevenueDetails",
     "shortName": "Schedule of Deferred Revenue (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2020-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:ContractWithCustomerLiability",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2020-12-31_us-gaap_CommonStockMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00000005 - Statement - Consolidated Statement of Changes in Stockholders' Equity",
     "menuCat": "Statements",
     "order": "5",
     "role": "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity",
     "shortName": "Consolidated Statement of Changes in Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2020-12-31_us-gaap_CommonStockMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000050 - Disclosure - Schedule of Basic and Diluted Earnings Per Share (Details)",
     "menuCat": "Details",
     "order": "50",
     "role": "http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails",
     "shortName": "Schedule of Basic and Diluted Earnings Per Share (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2021-01-012021-12-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000051 - Disclosure - Earnings per Share (Details Narrative)",
     "menuCat": "Details",
     "order": "51",
     "role": "http://codiagnostics.com/role/EarningsPerShareDetailsNarrative",
     "shortName": "Earnings per Share (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000052 - Disclosure - Schedule of Option Activity (Details)",
     "menuCat": "Details",
     "order": "52",
     "role": "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails",
     "shortName": "Schedule of Option Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2020-12-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2021-12-31_us-gaap_RestrictedStockUnitsRSUMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000053 - Disclosure - Schedule of Outstanding Restricted Stock Units and Related Activity (Details)",
     "menuCat": "Details",
     "order": "53",
     "role": "http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails",
     "shortName": "Schedule of Outstanding Restricted Stock Units and Related Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2020-12-31_us-gaap_RestrictedStockUnitsRSUMember",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber",
      "reportCount": 1,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000054 - Disclosure - Schedule of Warrant Activity (Details)",
     "menuCat": "Details",
     "order": "54",
     "role": "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails",
     "shortName": "Schedule of Warrant Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2020-12-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000055 - Disclosure - Schedule of Recognized Stock-based Compensation Expense (Details)",
     "menuCat": "Details",
     "order": "55",
     "role": "http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails",
     "shortName": "Schedule of Recognized Stock-based Compensation Expense (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ClassOfWarrantOrRightOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000056 - Disclosure - Stock-Based Compensation (Details Narrative)",
     "menuCat": "Details",
     "order": "56",
     "role": "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative",
     "shortName": "Stock-Based Compensation (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ClassOfWarrantOrRightOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000057 - Disclosure - Schedule of Components Income Tax Provision (Details)",
     "menuCat": "Details",
     "order": "57",
     "role": "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails",
     "shortName": "Schedule of Components Income Tax Provision (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000058 - Disclosure - Schedule of Benefit from Income Taxes and Effective Tax Rates (Details)",
     "menuCat": "Details",
     "order": "58",
     "role": "http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails",
     "shortName": "Schedule of Benefit from Income Taxes and Effective Tax Rates (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000059 - Disclosure - Schedule of Deferred Tax Assets (Details)",
     "menuCat": "Details",
     "order": "59",
     "role": "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails",
     "shortName": "Schedule of Deferred Tax Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00000006 - Statement - Consolidated Statements of Cash Flows",
     "menuCat": "Statements",
     "order": "6",
     "role": "http://codiagnostics.com/role/StatementsOfCashFlows",
     "shortName": "Consolidated Statements of Cash Flows",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:DepreciationDepletionAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:UnrecognizedTaxBenefits",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000060 - Disclosure - Schedule of Unrecognized Tax Benefits (Details)",
     "menuCat": "Details",
     "order": "60",
     "role": "http://codiagnostics.com/role/ScheduleOfUnrecognizedTaxBenefitsDetails",
     "shortName": "Schedule of Unrecognized Tax Benefits (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2020-12-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:UnrecognizedTaxBenefits",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000061 - Disclosure - Income Taxes (Details Narrative)",
     "menuCat": "Details",
     "order": "61",
     "role": "http://codiagnostics.com/role/IncomeTaxesDetailsNarrative",
     "shortName": "Income Taxes (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:LeaseCostTableTextBlock",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000062 - Disclosure - Schedule of Lease Expense (Details)",
     "menuCat": "Details",
     "order": "62",
     "role": "http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails",
     "shortName": "Schedule of Lease Expense (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:LeaseCostTableTextBlock",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000063 - Disclosure - Schedule of Maturities on Company Lease Liabilities (Details)",
     "menuCat": "Details",
     "order": "63",
     "role": "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails",
     "shortName": "Schedule of Maturities on Company Lease Liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "CODX:ScheduleOfOperatingLeaseTableTextBlock",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000064 - Disclosure - Schedule of Other Information Related to Operating Lease (Details)",
     "menuCat": "Details",
     "order": "64",
     "role": "http://codiagnostics.com/role/ScheduleOfOtherInformationRelatedToOperatingLeaseDetails",
     "shortName": "Schedule of Other Information Related to Operating Lease (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "CODX:ScheduleOfOperatingLeaseTableTextBlock",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2021-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:TreasuryStockShares",
      "reportCount": 1,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000065 - Disclosure - Schedule of Treasury Stock (Details)",
     "menuCat": "Details",
     "order": "65",
     "role": "http://codiagnostics.com/role/ScheduleOfTreasuryStockDetails",
     "shortName": "Schedule of Treasury Stock (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "CODX:ScheduleOfTreasuryStockTableTextBlock",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": "INF",
      "lang": null,
      "name": "CODX:RepurchasesOfCommonStock",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-03-31",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000066 - Disclosure - Share Repurchase Program (Details Narrative)",
     "menuCat": "Details",
     "order": "66",
     "role": "http://codiagnostics.com/role/ShareRepurchaseProgramDetailsNarrative",
     "shortName": "Share Repurchase Program (Details Narrative)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "p",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "AsOf2022-03-31",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000007 - Disclosure - Overview and Basis of Presentation",
     "menuCat": "Notes",
     "order": "7",
     "role": "http://codiagnostics.com/role/OverviewAndBasisOfPresentation",
     "shortName": "Overview and Basis of Presentation",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000008 - Disclosure - Summary of Significant Accounting Policies",
     "menuCat": "Notes",
     "order": "8",
     "role": "http://codiagnostics.com/role/SummaryOfSignificantAccountingPolicies",
     "shortName": "Summary of Significant Accounting Policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashCashEquivalentsAndMarketableSecuritiesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "00000009 - Disclosure - Cash, Cash Equivalents, and Financial Instruments",
     "menuCat": "Notes",
     "order": "9",
     "role": "http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstruments",
     "shortName": "Cash, Cash Equivalents, and Financial Instruments",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "form10-k.htm",
      "contextRef": "From2022-01-01to2022-12-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashCashEquivalentsAndMarketableSecuritiesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 58,
   "tag": {
    "CODX_ACIAndIDMOMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ACI And IDMO [Member]",
        "label": "ACI And IDMO [Member]"
       }
      }
     },
     "localname": "ACIAndIDMOMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_AdvancedConceptionsIncAndIdahoMolecularIncMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Advanced Conceptions, Inc. and Idaho Molecular, Inc. [Member]",
        "label": "Advanced Conceptions, Inc. and Idaho Molecular, Inc. [Member]"
       }
      }
     },
     "localname": "AdvancedConceptionsIncAndIdahoMolecularIncMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_BusinessAcquisitionMeasurementPeriodAdjustments": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business acquisition measurement period adjustments.",
        "label": "Business acquisition measurement period adjustments"
       }
      }
     },
     "localname": "BusinessAcquisitionMeasurementPeriodAdjustments",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of input, expected term used to measure contingent consideration liability from business combination.",
        "label": "BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm",
        "verboseLabel": "Business combination,contingent consideration"
       }
      }
     },
     "localname": "BusinessCombinationContingentConsiderationLiabilityMeasurementInputExpectedTerm",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "CODX_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business combination recognized identifiable assets acquired and liabilities non competition agreements.",
        "label": "Non competition agreements"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesNonCompetitionAgreements",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_ClassOfWarrantExercisable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Class of warrant exercisable.",
        "label": "Warrants exercisable"
       }
      }
     },
     "localname": "ClassOfWarrantExercisable",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "CODX_ContingentConsideredIssuedForBusinessAcquisitions": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contingent considered issued for business acquisitions.",
        "label": "Change in fair value of contingent consideration issued for business acquisitions"
       }
      }
     },
     "localname": "ContingentConsideredIssuedForBusinessAcquisitions",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfChangesInFairValueMeasurementDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_ContingentConsideredIssuedForMeasurementPeriodAdjustments": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contingent considered issued for measurement period adjustments.",
        "label": "Change in contingent purchase consideration for measurement period adjustments"
       }
      }
     },
     "localname": "ContingentConsideredIssuedForMeasurementPeriodAdjustments",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfChangesInFairValueMeasurementDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_CustomersMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Customers [Member]",
        "label": "Customers [Member]"
       }
      }
     },
     "localname": "CustomersMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_CustomersTogetherMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Customers Together [Member]",
        "label": "Customers Together [Member]"
       }
      }
     },
     "localname": "CustomersTogetherMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Decrease due to refunds to customers and application to open balances.",
        "label": "DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances",
        "negatedLabel": "Decrease due to refunds to customers and application to open balances"
       }
      }
     },
     "localname": "DecreaseDueToRefundsToCustomersAndApplicationToOpenBalances",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredRevenueDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_DeferredTaxAssetsLeaseLiability": {
     "auth_ref": [],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax assets lease liability.",
        "label": "Lease liability"
       }
      }
     },
     "localname": "DeferredTaxAssetsLeaseLiability",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_DeferredTaxAssetsUniformCapitalization": {
     "auth_ref": [],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax assets uniform capitalization.",
        "label": "UNICAP"
       }
      }
     },
     "localname": "DeferredTaxAssetsUniformCapitalization",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_DeferredTaxLiabilitiesRightOfUseAsset": {
     "auth_ref": [],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred tax liabilities right of use asset.",
        "label": "Right of use asset"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesRightOfUseAsset",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Effective income tax rate reconciliation change in valuation allowance.",
        "label": "Change in uncertain tax positions"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationChangeInValuationAllowance",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "CODX_EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Effective income tax rate reconciliation contingent consideration remeasurement.",
        "label": "- Contingent consideration remeasurement"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationContingentConsiderationRemeasurement",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "CODX_EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Effective income tax rate reconcilation foreign derived intangible income deduction.",
        "label": "- Foreign derived intangible income deduction"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationForeignderivedIntangibleIncomeDeduction",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "CODX_EffectiveIncomeTaxRateReconciliationGoodwillImpairment": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Effective income tax rate reconciliation Goodwill impairment.",
        "label": "- Goodwill impairment"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationGoodwillImpairment",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "CODX_FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of contingent common stock and warrants issued as consideration for business acquisitions.",
        "label": "Fair value of contingent common stock issued as consideration for business acquisitions"
       }
      }
     },
     "localname": "FairValueOfContingentCommonStockAndWarrantsIssuedAsConsiderationForBusinessAcquisitions",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_FairValueOfContingentConsiderationToCommonStock": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of contingent consideration to common stock.",
        "label": "Contingent consideration - common stock"
       }
      }
     },
     "localname": "FairValueOfContingentConsiderationToCommonStock",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_FairValueOfContingentConsiderationToWarrants": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of contigent consideration to warrants.",
        "label": "Contingent consideration - warrants"
       }
      }
     },
     "localname": "FairValueOfContingentConsiderationToWarrants",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_FourCustomersMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Four Customers [Member]",
        "label": "Four Customers [Member]"
       }
      }
     },
     "localname": "FourCustomersMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_GainOnRemeasurementOfAcquisitionContingencies": {
     "auth_ref": [],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 3.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gain on remeasurement of acquisition contingencies.",
        "label": "Gain on remeasurement of acquisition contingencies",
        "negatedLabel": "Change in fair value of acquisition contingencies"
       }
      }
     },
     "localname": "GainOnRemeasurementOfAcquisitionContingencies",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows",
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_IncreaseDueToNoteReceivable": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase due to note receivable.",
        "label": "Increase due to note receivable"
       }
      }
     },
     "localname": "IncreaseDueToNoteReceivable",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredRevenueDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_IncreaseDueToPrepaymentsFromCustomers": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase due to prepayments from customers.",
        "label": "Increase due to prepayments from customers"
       }
      }
     },
     "localname": "IncreaseDueToPrepaymentsFromCustomers",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredRevenueDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_IndefiniteLivedIntangibleAssetUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indefinite lived intangible asset useful life.",
        "label": "Estimated useful lives in years, term"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetUsefulLife",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Issued For Adjustments To Contingent Purchase Consideration Period Weighted Average Exercise Price.",
        "label": "Weighted Average Exercise Price, Issued"
       }
      }
     },
     "localname": "IssuedForAdjustmentsToContingentPurchaseConsiderationPeriodWeightedAverageExercisePrice",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Issued for adjustments to contingent purchase consideration weighted average grant date fair value.",
        "label": "Weighted Average Fair Value, Issued"
       }
      }
     },
     "localname": "IssuedForAdjustmentsToContingentPurchaseConsiderationWeightedAverageGrantDateFairValue",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_MeasurementInputAssetVolatilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement Input Asset Volatility [Member]",
        "label": "Measurement Input Asset Volatility [Member]"
       }
      }
     },
     "localname": "MeasurementInputAssetVolatilityMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_MeasurementInputCostOfCapitalMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement Input Cost of Capital [Member]",
        "label": "Measurement Input Cost of Capital [Member]"
       }
      }
     },
     "localname": "MeasurementInputCostOfCapitalMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_MeasurementInputEquityVolatilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement Input Equity Volatility [Member]",
        "label": "Measurement Input Equity Volatility [Member]"
       }
      }
     },
     "localname": "MeasurementInputEquityVolatilityMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_MeasurementInputRevenueVolatilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement Input Revenue Volatility [Member]",
        "label": "Measurement Input Revenue Volatility [Member]"
       }
      }
     },
     "localname": "MeasurementInputRevenueVolatilityMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_MeasurementInputStrikePriceMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement Input Strike Price [Member]",
        "label": "Measurement Input Strike Price [Member]"
       }
      }
     },
     "localname": "MeasurementInputStrikePriceMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_NetDeferredTaxLiabilities": {
     "auth_ref": [],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net deferred tax liabilities.",
        "label": "Net deferred tax (liabilities)"
       }
      }
     },
     "localname": "NetDeferredTaxLiabilities",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_NoncashLeaseExpense": {
     "auth_ref": [],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Noncash lease expense.",
        "label": "Non-cash lease expense"
       }
      }
     },
     "localname": "NoncashLeaseExpense",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Noncash or part noncash inventory moved to property plant and equipment..",
        "label": "Inventory moved to property, plant and equipment"
       }
      }
     },
     "localname": "NoncashOrPartNoncashInventoryMovedToPropertyPlantAndEquipment",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_OneCustomerMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "One Customer [Member]",
        "label": "One Customer [Member]"
       }
      }
     },
     "localname": "OneCustomerMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_PaymentsToShareHoldersValueAcquisitions": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Payments to share holders value acquisitions.",
        "label": "Payable to shareholders"
       }
      }
     },
     "localname": "PaymentsToShareHoldersValueAcquisitions",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_RemeasurementOfAcquisitionContingencies": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Remeasurement of acquisition contingencies.",
        "label": "Remeasurement of acquisition contingencies"
       }
      }
     },
     "localname": "RemeasurementOfAcquisitionContingencies",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_RepurchasesOfCommonStock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Repurchases of common stock.",
        "label": "Repurchases of common stock"
       }
      }
     },
     "localname": "RepurchasesOfCommonStock",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfTreasuryStockDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "CODX_RestOfWorldMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rest of World [Member]",
        "label": "Rest of World [Member]"
       }
      }
     },
     "localname": "RestOfWorldMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_ScheduleOfOperatingLeaseTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of Operating Lease [Table Text Block]",
        "label": "Schedule of Other Information Related to Operating Lease"
       }
      }
     },
     "localname": "ScheduleOfOperatingLeaseTableTextBlock",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/CommitmentsAndContingenciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "CODX_ScheduleOfTreasuryStockTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of Treasury Stock [Table Text Block]",
        "label": "Schedule of Treasury Stock"
       }
      }
     },
     "localname": "ScheduleOfTreasuryStockTableTextBlock",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ShareRepurchaseProgramTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average fair value, exercised.",
        "label": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue",
        "verboseLabel": "Weighted Average Fair Value, Exercised"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average exercise price, beginning.",
        "label": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice",
        "periodStartLabel": "Weighted Average Exercise Price, Beginning"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share based compensation arrangement by share based payment award non options outstanding weighted average fair value.",
        "label": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue",
        "periodStartLabel": "Weighted Average fair value, Beginning"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsOutstandingWeightedAverageFairValue",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the non-option plan.",
        "label": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice",
        "periodEndLabel": "Weighted Average Exercise Price, Ending"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Intrinsic value of warrants exercised.",
        "label": "Intrinsic value of warrants exercised"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisesInPeriodTotalIntrinsicValue",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average exercise price, forfeited/cancelled.",
        "label": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice",
        "verboseLabel": "Weighted Average Exercise Price, Exercised"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to non-options of the plan that expired.",
        "label": "Weighted Average Exercise Price, Expired [Default Label]",
        "verboseLabel": "Weighted Average Exercise Price, Expired"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsExpirationsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average exercise price, forfeited/cancelled.",
        "label": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice",
        "verboseLabel": "Weighted Average Exercise Price, Forfeited/Cancelled"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsForfeituresInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average exercise price granted.",
        "label": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice",
        "verboseLabel": "Weighted Average Exercise Price, Granted"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardNonOptionsGrantedInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share based compensation issued for adjustments to contingent purchase consideration.",
        "label": "Number of Warrants Outstanding, Issued"
       }
      }
     },
     "localname": "ShareBasedCompensationIssuedForAdjustmentsToContingentPurchaseConsideration",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted-average remaining contractual life (years) outstanding, beginning.",
        "label": "Weighted-average Remaining Contractual Life (Years) Outstanding"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm1",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sharebased compensation arrangement by sharebased payment award non options outstanding weighted average remaining contractual term3.",
        "label": "SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3",
        "verboseLabel": "Weighted-average Remaining Contractual Life (Years) Outstanding"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsOutstandingWeightedAverageRemainingContractualTerm3",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average fair value, beginning.",
        "label": "SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue",
        "periodEndLabel": "Weighted Average Fair Value, Ending"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardNonOptionsWeightedAverageGrantDateFairValue",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share based compensation arrangement by share based payment award options non vested weighted average grant date fair value exercised.",
        "label": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue",
        "verboseLabel": "Weighted Average Fair Value, Expired"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsExpirationsWeightedAverageGrantDateFairValue",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average fair value, forfeited/cancelled.",
        "label": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue",
        "verboseLabel": "Weighted Average Fair Value, Forfeited/Cancelled"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsForfeitedWeightedAverageGrantDateFairValue",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average grant date fair value, granted",
        "label": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue",
        "verboseLabel": "Weighted Average Fair Value, Granted"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNonOptionsGrantedWeightedAverageGrantDateFairValue",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share based compensation arrangement by share based payment award options non vested weighted average grant date fair value exercisable.",
        "label": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable",
        "periodEndLabel": "Weighted Average Fair Value, Exercisable Ending"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercisable",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share based compensation arrangement by share based payment award options non vested weighted average grant date fair value exercised.",
        "label": "Weighted Average Fair Value, Exercised"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueExercised",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "CODX_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sharebased compensation arrangement by sharebased payment award non options outstanding weighted average remaining contractual term.",
        "label": "Weighted-average Remaining Contractual Life (years) Outstanding, Ending"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "CODX_StockIssuedDuringPeriodSharesContingentConsideration": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock issued during period shares contingent consideration.",
        "label": "Number of shares on contingent consideration"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesContingentConsideration",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "CODX_StockIssuedDuringPeriodSharesExchanged": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock issued during period shares exchanged.",
        "label": "Number of shares exchanged"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesExchanged",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "CODX_StockIssuedDuringPeriodValueAcquisitionsAdjustments": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock issued during period value acquisitions adjustments.",
        "label": "Fair value of common stock issued as consideration for business acquisitions"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueAcquisitionsAdjustments",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_StockOptionsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Options [Member]",
        "label": "Stock Options [Member]"
       }
      }
     },
     "localname": "StockOptionsMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_TaxesPayableNoncurrent": {
     "auth_ref": [],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Taxes payable non current.",
        "label": "TaxesPayableNoncurrent",
        "verboseLabel": "Income taxes payable"
       }
      }
     },
     "localname": "TaxesPayableNoncurrent",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "CODX_ThirdPartiesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Third Parties [Member]",
        "label": "Third Parties [Member]"
       }
      }
     },
     "localname": "ThirdPartiesMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_TwoCustomersTogetherMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two Customers Together [Member]",
        "label": "Two Customers Together [Member]"
       }
      }
     },
     "localname": "TwoCustomersTogetherMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "CODX_TwoThousandFifteenLongTermIncentivePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2015 Long Term Incentive Plan [Member]",
        "label": "2015 Long Term Incentive Plan [Member]"
       }
      }
     },
     "localname": "TwoThousandFifteenLongTermIncentivePlanMember",
     "nsuri": "http://codiagnostics.com/20221231",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "country_US": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "UNITED STATES"
       }
      }
     },
     "localname": "US",
     "nsuri": "http://xbrl.sec.gov/country/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_AmendmentDescription": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Description of changes contained within amended document.",
        "label": "Amendment Description"
       }
      }
     },
     "localname": "AmendmentDescription",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "stringItemType"
    },
    "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AnnualInformationForm": {
     "auth_ref": [
      "r611"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag with value true on a form if it is an annual report containing an annual information form.",
        "label": "Annual Information Form"
       }
      }
     },
     "localname": "AnnualInformationForm",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AuditedAnnualFinancialStatements": {
     "auth_ref": [
      "r611"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag with value true on a form if it is an annual report containing audited financial statements.",
        "label": "Audited Annual Financial Statements"
       }
      }
     },
     "localname": "AuditedAnnualFinancialStatements",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AuditorFirmId": {
     "auth_ref": [
      "r608",
      "r610",
      "r611"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "PCAOB issued Audit Firm Identifier",
        "label": "Auditor Firm ID"
       }
      }
     },
     "localname": "AuditorFirmId",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "nonemptySequenceNumberItemType"
    },
    "dei_AuditorLocation": {
     "auth_ref": [
      "r608",
      "r610",
      "r611"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Location"
       }
      }
     },
     "localname": "AuditorLocation",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_AuditorName": {
     "auth_ref": [
      "r608",
      "r610",
      "r611"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Name"
       }
      }
     },
     "localname": "AuditorName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CountryRegion": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Region code of country",
        "label": "Country Region"
       }
      }
     },
     "localname": "CountryRegion",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CoverAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cover page.",
        "label": "Cover [Abstract]"
       }
      }
     },
     "localname": "CoverAbstract",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "xbrltype": "stringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAccountingStandard": {
     "auth_ref": [
      "r610"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The basis of accounting the registrant has used to prepare the financial statements included in this filing This can either be 'U.S. GAAP', 'International Financial Reporting Standards', or 'Other'.",
        "label": "Document Accounting Standard"
       }
      }
     },
     "localname": "DocumentAccountingStandard",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "accountingStandardItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r608",
      "r610",
      "r611"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an annual report.",
        "label": "Document Annual Report"
       }
      }
     },
     "localname": "DocumentAnnualReport",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentPeriodStartDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The start date of the period covered in the document, in YYYY-MM-DD format.",
        "label": "Document Period Start Date"
       }
      }
     },
     "localname": "DocumentPeriodStartDate",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentQuarterlyReport": {
     "auth_ref": [
      "r609"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentRegistrationStatement": {
     "auth_ref": [
      "r597"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a registration statement.",
        "label": "Document Registration Statement"
       }
      }
     },
     "localname": "DocumentRegistrationStatement",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentShellCompanyEventDate": {
     "auth_ref": [
      "r610"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Date of event requiring a shell company report.",
        "label": "Document Shell Company Event Date"
       }
      }
     },
     "localname": "DocumentShellCompanyEventDate",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentShellCompanyReport": {
     "auth_ref": [
      "r610"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true for a Shell Company Report pursuant to section 13 or 15(d) of the Exchange Act.",
        "label": "Document Shell Company Report"
       }
      }
     },
     "localname": "DocumentShellCompanyReport",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r612"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_DocumentsIncorporatedByReferenceTextBlock": {
     "auth_ref": [
      "r600"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Documents incorporated by reference.",
        "label": "Documents Incorporated by Reference [Text Block]"
       }
      }
     },
     "localname": "DocumentsIncorporatedByReferenceTextBlock",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "textBlockItemType"
    },
    "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressAddressLine2": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 2 such as Street or Suite number",
        "label": "Entity Address, Address Line Two"
       }
      }
     },
     "localname": "EntityAddressAddressLine2",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressAddressLine3": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 3 such as an Office Park",
        "label": "Entity Address, Address Line Three"
       }
      }
     },
     "localname": "EntityAddressAddressLine3",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCountry": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ISO 3166-1 alpha-2 country code.",
        "label": "Entity Address, Country"
       }
      }
     },
     "localname": "EntityAddressCountry",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "countryCodeItemType"
    },
    "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityBankruptcyProceedingsReportingCurrent": {
     "auth_ref": [
      "r603"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For registrants involved in bankruptcy proceedings during the preceding five years, the value Yes indicates that the registrant has filed all documents and reports required to be filed by Section 12, 13 or 15(d) of the Securities Exchange Act of 1934 subsequent to the distribution of securities under a plan confirmed by a court; the value No indicates the registrant has not.  Registrants not involved in bankruptcy proceedings during the preceding five years should not report this element.",
        "label": "Entity Bankruptcy Proceedings, Reporting Current"
       }
      }
     },
     "localname": "EntityBankruptcyProceedingsReportingCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r599"
     ],
     "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": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r599"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityExTransitionPeriod": {
     "auth_ref": [
      "r616"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if an emerging growth company has elected not to use the extended transition period for complying with any new or revised financial accounting standards.",
        "label": "Elected Not To Use the Extended Transition Period"
       }
      }
     },
     "localname": "EntityExTransitionPeriod",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r599"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r613"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityPrimarySicNumber": {
     "auth_ref": [
      "r611"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary Standard Industrial Classification (SIC) Number for the Entity.",
        "label": "Entity Primary SIC Number"
       }
      }
     },
     "localname": "EntityPrimarySicNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "sicNumberItemType"
    },
    "dei_EntityPublicFloat": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.",
        "label": "Entity Public Float"
       }
      }
     },
     "localname": "EntityPublicFloat",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r599"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r599"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r599"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r599"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_EntityVoluntaryFilers": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.",
        "label": "Entity Voluntary Filers"
       }
      }
     },
     "localname": "EntityVoluntaryFilers",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "auth_ref": [
      "r614"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.",
        "label": "Entity Well-known Seasoned Issuer"
       }
      }
     },
     "localname": "EntityWellKnownSeasonedIssuer",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_Extension": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Extension number for local phone number.",
        "label": "Extension"
       }
      }
     },
     "localname": "Extension",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_IcfrAuditorAttestationFlag": {
     "auth_ref": [
      "r608",
      "r610",
      "r611"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "localname": "IcfrAuditorAttestationFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_NoTradingSymbolFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a security having no trading symbol.",
        "label": "No Trading Symbol Flag"
       }
      }
     },
     "localname": "NoTradingSymbolFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "trueItemType"
    },
    "dei_OtherReportingStandardItemNumber": {
     "auth_ref": [
      "r610"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "\"Item 17\" or \"Item 18\" specified when the basis of accounting is neither US GAAP nor IFRS.",
        "label": "Other Reporting Standard Item Number"
       }
      }
     },
     "localname": "OtherReportingStandardItemNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "otherReportingStandardItemNumberItemType"
    },
    "dei_PreCommencementIssuerTenderOffer": {
     "auth_ref": [
      "r604"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act.",
        "label": "Pre-commencement Issuer Tender Offer"
       }
      }
     },
     "localname": "PreCommencementIssuerTenderOffer",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_PreCommencementTenderOffer": {
     "auth_ref": [
      "r605"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act.",
        "label": "Pre-commencement Tender Offer"
       }
      }
     },
     "localname": "PreCommencementTenderOffer",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r598"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_Security12gTitle": {
     "auth_ref": [
      "r602"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(g) registered security.",
        "label": "Title of 12(g) Security"
       }
      }
     },
     "localname": "Security12gTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r601"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_SecurityReportingObligation": {
     "auth_ref": [
      "r606"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "15(d), indicating whether the security has a reporting obligation under that section of the Exchange Act.",
        "label": "Security Reporting Obligation"
       }
      }
     },
     "localname": "SecurityReportingObligation",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "securityReportingObligationItemType"
    },
    "dei_SolicitingMaterial": {
     "auth_ref": [
      "r607"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act.",
        "label": "Soliciting Material"
       }
      }
     },
     "localname": "SolicitingMaterial",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "dei_WrittenCommunications": {
     "auth_ref": [
      "r615"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act.",
        "label": "Written Communications"
       }
      }
     },
     "localname": "WrittenCommunications",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://codiagnostics.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "srt_EquityMethodInvesteeNameDomain": {
     "auth_ref": [],
     "localname": "EquityMethodInvesteeNameDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r262",
      "r581",
      "r668",
      "r729"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r296",
      "r297",
      "r298",
      "r299",
      "r357",
      "r507",
      "r528",
      "r557",
      "r558",
      "r578",
      "r591",
      "r596",
      "r666",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r296",
      "r297",
      "r298",
      "r299",
      "r357",
      "r507",
      "r528",
      "r557",
      "r558",
      "r578",
      "r591",
      "r596",
      "r666",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [
      "r262",
      "r581",
      "r668",
      "r729"
     ],
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r296",
      "r297",
      "r298",
      "r299",
      "r350",
      "r357",
      "r385",
      "r386",
      "r387",
      "r506",
      "r507",
      "r528",
      "r557",
      "r558",
      "r578",
      "r591",
      "r596",
      "r662",
      "r666",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r296",
      "r297",
      "r298",
      "r299",
      "r350",
      "r357",
      "r385",
      "r386",
      "r387",
      "r506",
      "r507",
      "r528",
      "r557",
      "r558",
      "r578",
      "r591",
      "r596",
      "r662",
      "r666",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725"
     ],
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RestatementAdjustmentMember": {
     "auth_ref": [
      "r210",
      "r211",
      "r212",
      "r222",
      "r223",
      "r239",
      "r449",
      "r450",
      "r633",
      "r634",
      "r635",
      "r636",
      "r638",
      "r641",
      "r642"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revision of Prior Period, Adjustment [Member]"
       }
      }
     },
     "localname": "RestatementAdjustmentMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RestatementAxis": {
     "auth_ref": [
      "r164",
      "r210",
      "r211",
      "r212",
      "r213",
      "r214",
      "r217",
      "r218",
      "r219",
      "r220",
      "r222",
      "r223",
      "r224",
      "r225",
      "r226",
      "r227",
      "r239",
      "r277",
      "r278",
      "r420",
      "r445",
      "r449",
      "r450",
      "r451",
      "r483",
      "r499",
      "r500",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revision of Prior Period [Axis]"
       }
      }
     },
     "localname": "RestatementAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RestatementDomain": {
     "auth_ref": [
      "r164",
      "r210",
      "r211",
      "r212",
      "r213",
      "r214",
      "r217",
      "r218",
      "r219",
      "r220",
      "r222",
      "r223",
      "r224",
      "r225",
      "r226",
      "r227",
      "r239",
      "r277",
      "r278",
      "r420",
      "r445",
      "r449",
      "r450",
      "r451",
      "r483",
      "r499",
      "r500",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540"
     ],
     "localname": "RestatementDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioPreviouslyReportedMember": {
     "auth_ref": [
      "r164",
      "r210",
      "r212",
      "r213",
      "r214",
      "r217",
      "r218",
      "r226",
      "r239",
      "r420",
      "r445",
      "r449",
      "r450",
      "r483",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r637",
      "r638",
      "r639",
      "r640",
      "r641",
      "r649",
      "r650",
      "r709",
      "r715",
      "r716"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Previously Reported [Member]"
       }
      }
     },
     "localname": "ScenarioPreviouslyReportedMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis": {
     "auth_ref": [
      "r271"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment, Name [Axis]"
       }
      }
     },
     "localname": "ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r260",
      "r261",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r580",
      "r595",
      "r668"
     ],
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r260",
      "r261",
      "r542",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r580",
      "r595",
      "r668"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualAxis": {
     "auth_ref": [
      "r647",
      "r717"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Axis]"
       }
      }
     },
     "localname": "TitleOfIndividualAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "auth_ref": [],
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountingStandardsUpdate201602Member": {
     "auth_ref": [
      "r479"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accounting Standards Update 2016-02 Leases (Topic 842).",
        "label": "Accounting Standards Update 2016-02 [Member]"
       }
      }
     },
     "localname": "AccountingStandardsUpdate201602Member",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": {
     "auth_ref": [
      "r16"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period.",
        "label": "Accrued Expenses"
       }
      }
     },
     "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/AccruedExpenses"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r15",
      "r594"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableGrossCurrent": {
     "auth_ref": [
      "r180",
      "r263",
      "r264",
      "r565"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before 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, before allowance for credit loss, current"
       }
      }
     },
     "localname": "AccountsReceivableGrossCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableMember": {
     "auth_ref": [
      "r543"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Due from customers or clients for goods or services that have been delivered or sold.",
        "label": "Accounts Receivable [Member]"
       }
      }
     },
     "localname": "AccountsReceivableMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r263",
      "r264"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "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, net",
        "verboseLabel": "Accounts receivable, after allowance for credit loss, current"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets",
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r19"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      },
      "http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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": "Accrued expenses, current",
        "verboseLabel": "Total accrued expenses"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets",
      "http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedPayrollTaxesCurrent": {
     "auth_ref": [
      "r19"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for statutory payroll taxes incurred through that date and withheld from employees pertaining to services received from them, including entity's matching share of the employees FICA taxes and contributions to the state and federal unemployment insurance programs. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Payroll liabilities"
       }
      }
     },
     "localname": "AccruedPayrollTaxesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedSalesCommissionCurrent": {
     "auth_ref": [
      "r19",
      "r567"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for sales commissions. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Distributor commissions"
       }
      }
     },
     "localname": "AccruedSalesCommissionCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r82",
      "r172"
     ],
     "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": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "negatedLabel": "Less: accumulated depreciation"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r25",
      "r26",
      "r27",
      "r181",
      "r523",
      "r536",
      "r540"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.",
        "label": "Accumulated other comprehensive income"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r24",
      "r27",
      "r126",
      "r500",
      "r531",
      "r532",
      "r622",
      "r623",
      "r624",
      "r630",
      "r631",
      "r632"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.",
        "label": "AOCI Attributable to Parent [Member]"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdditionalPaidInCapital": {
     "auth_ref": [
      "r10",
      "r594"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 4.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/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r391",
      "r392",
      "r393",
      "r630",
      "r631",
      "r632",
      "r708"
     ],
     "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 [Member]"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": {
     "auth_ref": [
      "r161",
      "r162",
      "r163",
      "r164",
      "r165",
      "r213",
      "r214",
      "r215",
      "r216",
      "r227",
      "r269",
      "r270",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r391",
      "r392",
      "r393",
      "r417",
      "r418",
      "r419",
      "r420",
      "r433",
      "r434",
      "r435",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r446",
      "r447",
      "r448",
      "r449",
      "r450",
      "r451",
      "r452",
      "r462",
      "r463",
      "r464",
      "r465",
      "r466",
      "r467",
      "r468",
      "r469",
      "r477",
      "r478",
      "r480",
      "r481",
      "r482",
      "r483",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r512",
      "r513",
      "r514",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by amendment to accounting standards.",
        "label": "Accounting Standards Update [Axis]"
       }
      }
     },
     "localname": "AdjustmentsForNewAccountingPronouncementsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to reconcile net income to cash used in operating activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r389"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.",
        "label": "Total stock-based compensation expense"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r182",
      "r267",
      "r279"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "Uncollectable accounts"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r236"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.",
        "label": "Securities excluded from computation of diluted earnings per share"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/EarningsPerShareDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": {
     "auth_ref": [
      "r54"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of antidilutive security.",
        "label": "Antidilutive Securities [Axis]"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/EarningsPerShareDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": {
     "auth_ref": [],
     "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": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/EarningsPerShareDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AntidilutiveSecuritiesNameDomain": {
     "auth_ref": [
      "r54"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented."
       }
      }
     },
     "localname": "AntidilutiveSecuritiesNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/EarningsPerShareDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AssetAcquisitionContingentConsiderationLiabilityCurrent": {
     "auth_ref": [
      "r707"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liability recognized from contingent consideration in asset acquisition, classified as current.",
        "label": "Contingent consideration liabilities, current"
       }
      }
     },
     "localname": "AssetAcquisitionContingentConsiderationLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetAcquisitionContingentConsiderationLiabilityNoncurrent": {
     "auth_ref": [
      "r707"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liability recognized from contingent consideration in asset acquisition, classified as noncurrent.",
        "label": "Contingent consideration liabilities"
       }
      }
     },
     "localname": "AssetAcquisitionContingentConsiderationLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetImpairmentCharges": {
     "auth_ref": [
      "r47",
      "r79"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of write-down of assets recognized in the income statement. Includes, but is not limited to, losses from tangible assets, intangible assets and goodwill.",
        "label": "Impairment charges"
       }
      }
     },
     "localname": "AssetImpairmentCharges",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r138",
      "r149",
      "r175",
      "r207",
      "r250",
      "r253",
      "r257",
      "r272",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r436",
      "r438",
      "r461",
      "r594",
      "r664",
      "r665",
      "r718"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "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": "Assets [Default Label]",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r167",
      "r185",
      "r207",
      "r272",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r436",
      "r438",
      "r461",
      "r594",
      "r664",
      "r665",
      "r718"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "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": "Assets, Current",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current assets"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsFairValueDisclosure": {
     "auth_ref": [
      "r127"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value portion of probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Total assets measured at fair value"
       }
      }
     },
     "localname": "AssetsFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r360",
      "r361",
      "r362",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of award under share-based payment arrangement.",
        "label": "Award Type [Axis]"
       }
      }
     },
     "localname": "AwardTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails",
      "http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails",
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "auth_ref": [
      "r431",
      "r589",
      "r590"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree."
       }
      }
     },
     "localname": "BusinessAcquisitionAcquireeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "auth_ref": [
      "r115",
      "r116",
      "r431",
      "r589",
      "r590"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business combination or series of individually immaterial business combinations.",
        "label": "Business Acquisition [Axis]"
       }
      }
     },
     "localname": "BusinessAcquisitionAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionLineItems": {
     "auth_ref": [],
     "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": "Business Acquisition [Line Items]"
       }
      }
     },
     "localname": "BusinessAcquisitionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessCombinationAndAssetAcquisitionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination and Asset Acquisition [Abstract]"
       }
      }
     },
     "localname": "BusinessCombinationAndAssetAcquisitionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "auth_ref": [
      "r121",
      "r122",
      "r124"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.",
        "label": "Business combination, consideration transferred",
        "verboseLabel": "Purchase consideration"
       }
      }
     },
     "localname": "BusinessCombinationConsiderationTransferred1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationContingentConsiderationLiabilityMeasurementInput": {
     "auth_ref": [
      "r457"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of input used to measure contingent consideration liability from business combination.",
        "label": "Business combination,contingent consideration"
       }
      }
     },
     "localname": "BusinessCombinationContingentConsiderationLiabilityMeasurementInput",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "decimalItemType"
    },
    "us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent": {
     "auth_ref": [
      "r120",
      "r123"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liability recognized arising from contingent consideration in a business combination, expected to be settled beyond one year or the normal operating cycle, if longer.",
        "label": "Business Combination, Contingent Consideration, Liability, Noncurrent",
        "periodEndLabel": "Fair value as of December 31, 2022",
        "periodStartLabel": "Fair value as of December 31, 2021"
       }
      }
     },
     "localname": "BusinessCombinationContingentConsiderationLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfChangesInFairValueMeasurementDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "auth_ref": [
      "r125",
      "r432"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).",
        "label": "Business Combinations"
       }
      }
     },
     "localname": "BusinessCombinationDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinations"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": {
     "auth_ref": [
      "r118"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. 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.",
        "label": "Cash"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther": {
     "auth_ref": [
      "r118"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of other assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other",
        "verboseLabel": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": {
     "auth_ref": [
      "r118"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Accounts receivables"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities": {
     "auth_ref": [
      "r118"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities",
        "negatedLabel": "Accounts payable and accrued other expenses"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": {
     "auth_ref": [
      "r118"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date.",
        "label": "Estimated tax liabilities",
        "negatedLabel": "Deferred tax liability"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet": {
     "auth_ref": [
      "r117",
      "r118"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount recognized as of the acquisition date for the identifiable assets acquired in excess of (less than) the aggregate liabilities assumed.",
        "label": "Total indentifiable net assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": {
     "auth_ref": [
      "r117",
      "r118"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date.",
        "label": "Property and equipments"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities": {
     "auth_ref": [
      "r117",
      "r118"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This item represents liabilities associated with restructuring or exit activities of the acquiree, existing at the acquisition date (present liabilities of the acquiree).",
        "label": "Research and development in process"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRestructuringLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": {
     "auth_ref": [
      "r118"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.",
        "label": "Total"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationsPolicy": {
     "auth_ref": [
      "r113"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy.",
        "label": "Business Combinations Policy [Policy Text Block]",
        "verboseLabel": "Business Combinations"
       }
      }
     },
     "localname": "BusinessCombinationsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock": {
     "auth_ref": [
      "r0",
      "r53",
      "r60"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the business description and basis of presentation concepts. Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).",
        "label": "Overview and Basis of Presentation"
       }
      }
     },
     "localname": "BusinessDescriptionAndBasisOfPresentationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/OverviewAndBasisOfPresentation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashAndCashEquivalentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and Cash Equivalents [Abstract]"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r49",
      "r170",
      "r563"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "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",
        "verboseLabel": "Cash and Cash Equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets",
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAxis": {
     "auth_ref": [
      "r170"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of cash and cash equivalent balance.",
        "label": "Cash and Cash Equivalents [Axis]"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashAndCashEquivalentsFairValueDisclosure": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value portion 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.",
        "label": "Cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsLineItems": {
     "auth_ref": [],
     "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": "Cash and Cash Equivalents [Line Items]"
       }
      }
     },
     "localname": "CashAndCashEquivalentsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r50"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.",
        "label": "Cash and Cash Equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashCashEquivalentsAndMarketableSecuritiesTextBlock": {
     "auth_ref": [
      "r65"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure of cash, cash equivalents, and debt and equity securities, including any unrealized or realized gain (loss).",
        "label": "Cash, Cash Equivalents, and Financial Instruments"
       }
      }
     },
     "localname": "CashCashEquivalentsAndMarketableSecuritiesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstruments"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "auth_ref": [
      "r44",
      "r49",
      "r52"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, disposal group and discontinued operations. 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": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations",
        "periodEndLabel": "Cash and cash equivalents at end of period",
        "periodStartLabel": "Cash and cash equivalents at beginning of period"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r44",
      "r136"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including 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": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "totalLabel": "Net increase in cash and cash equivalents"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashMember": {
     "auth_ref": [
      "r170"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Cash [Member]"
       }
      }
     },
     "localname": "CashMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ClassOfStockDomain": {
     "auth_ref": [
      "r177",
      "r178",
      "r179",
      "r207",
      "r230",
      "r231",
      "r233",
      "r235",
      "r243",
      "r244",
      "r272",
      "r300",
      "r302",
      "r303",
      "r304",
      "r307",
      "r308",
      "r310",
      "r311",
      "r313",
      "r317",
      "r323",
      "r461",
      "r559",
      "r617",
      "r627",
      "r643"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock."
       }
      }
     },
     "localname": "ClassOfStockDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights": {
     "auth_ref": [
      "r324"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of securities into which the class of warrant or right may be converted. For example, but not limited to, 500,000 warrants may be converted into 1,000,000 shares.",
        "label": "Warrants to purchase shares of common stock"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ClassOfWarrantOrRightOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of warrants or rights outstanding.",
        "label": "Warrants purchase"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r21",
      "r141",
      "r153"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.",
        "label": "Commitments and contingencies (Note 13)"
       }
      }
     },
     "localname": "CommitmentsAndContingencies",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r86",
      "r294",
      "r295",
      "r544",
      "r663"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/CommitmentsAndContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r630",
      "r631",
      "r708"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/EarningsPerShareDetailsNarrative",
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r9"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common stock, par value"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r9"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r9"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r9",
      "r87"
     ],
     "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"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r9",
      "r594"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Common stock, $0.001 par value; 100,000,000 shares authorized; 34,754,265 shares issued and 30,872,607 shares outstanding as of December 31, 2022 and 33,819,862 shares issued and outstanding as of December 31, 2021"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r28",
      "r190",
      "r192",
      "r198",
      "r519",
      "r525"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "totalLabel": "Comprehensive income (loss)"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomePolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for comprehensive income.",
        "label": "Comprehensive Income"
       }
      }
     },
     "localname": "ComprehensiveIncomePolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r58",
      "r59",
      "r133",
      "r134",
      "r262",
      "r543"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage."
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails",
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r58",
      "r59",
      "r133",
      "r134",
      "r262",
      "r541",
      "r543"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails",
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r58",
      "r59",
      "r133",
      "r134",
      "r262",
      "r543",
      "r730"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.",
        "label": "Concentration Risk Type [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails",
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskCreditRisk": {
     "auth_ref": [
      "r146",
      "r245"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for credit risk.",
        "label": "Concentrations Risk and Significant Customers"
       }
      }
     },
     "localname": "ConcentrationRiskCreditRisk",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "auth_ref": [
      "r58",
      "r59",
      "r133",
      "r134",
      "r262"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.",
        "label": "Concentration risk percentage",
        "verboseLabel": "Percentage of revenue"
       }
      }
     },
     "localname": "ConcentrationRiskPercentage1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails",
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r58",
      "r59",
      "r133",
      "r134",
      "r262",
      "r543"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration."
       }
      }
     },
     "localname": "ConcentrationRiskTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails",
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ContingentConsiderationClassifiedAsEquityFairValueDisclosure": {
     "auth_ref": [
      "r127"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of contingent consideration in a business combination that is classified in shareholders' equity.",
        "label": "Fair value of contingent shares"
       }
      }
     },
     "localname": "ContingentConsiderationClassifiedAsEquityFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "auth_ref": [
      "r667"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.",
        "label": "Schedule of Deferred Revenue"
       }
      }
     },
     "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/RevenueTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ContractWithCustomerLiability": {
     "auth_ref": [
      "r326",
      "r327",
      "r346"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.",
        "label": "Contract with Customer, Liability",
        "periodEndLabel": "Deferred revenue, Ending balance",
        "periodStartLabel": "Deferred revenue, beginning balance"
       }
      }
     },
     "localname": "ContractWithCustomerLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredRevenueDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "auth_ref": [
      "r326",
      "r327",
      "r346"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.",
        "label": "Deferred revenue"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": {
     "auth_ref": [
      "r347"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.",
        "label": "Contract with Customer, Liability, Revenue Recognized",
        "negatedLabel": "Revenue recognized included in deferred revenue balance at the beginning of the period"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityRevenueRecognized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredRevenueDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConvertiblePreferredStockMember": {
     "auth_ref": [
      "r310",
      "r311",
      "r313"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Preferred stock that may be exchanged into common shares or other types of securities at the owner's option.",
        "label": "Convertible Preferred Stock [Member]"
       }
      }
     },
     "localname": "ConvertiblePreferredStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CostOfRevenue": {
     "auth_ref": [
      "r35",
      "r207",
      "r272",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r461",
      "r664"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "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 revenue"
       }
      }
     },
     "localname": "CostOfRevenue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r703"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current federal, state, and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national, regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Current Federal, State and Local, Tax Expense (Benefit)",
        "totalLabel": "Total current"
       }
      }
     },
     "localname": "CurrentFederalStateAndLocalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current:"
       }
      }
     },
     "localname": "CurrentFederalStateAndLocalTaxExpenseBenefitAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "auth_ref": [
      "r629",
      "r703",
      "r705"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Federal"
       }
      }
     },
     "localname": "CurrentFederalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r629",
      "r703",
      "r705"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "State"
       }
      }
     },
     "localname": "CurrentStateAndLocalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "auth_ref": [
      "r56",
      "r262"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer.",
        "label": "Customer Concentration Risk [Member]"
       }
      }
     },
     "localname": "CustomerConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r629",
      "r704",
      "r705"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Deferred Federal Income Tax Expense (Benefit)",
        "verboseLabel": "Federal"
       }
      }
     },
     "localname": "DeferredFederalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r697"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred federal, state, and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national, regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Deferred Federal, State and Local, Tax Expense (Benefit)",
        "totalLabel": "Total deferred"
       }
      }
     },
     "localname": "DeferredFederalStateAndLocalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred:"
       }
      }
     },
     "localname": "DeferredFederalStateAndLocalTaxExpenseBenefitAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r47",
      "r112",
      "r415",
      "r423",
      "r424",
      "r629"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 9.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"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "auth_ref": [
      "r6",
      "r7",
      "r139",
      "r148",
      "r410"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 2.0,
       "parentTag": "CODX_NetDeferredTaxLiabilities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences.",
        "label": "Deferred Tax Liabilities, Gross",
        "negatedTotalLabel": "Total deferred tax liabilities"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "auth_ref": [
      "r399",
      "r400"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "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 tax liability"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r629",
      "r704",
      "r705"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction.",
        "label": "Deferred State and Local Income Tax Expense (Benefit)",
        "verboseLabel": "State"
       }
      }
     },
     "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "auth_ref": [
      "r411"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 1.0,
       "parentTag": "CODX_NetDeferredTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.",
        "label": "Deferred Tax Assets, Gross",
        "totalLabel": "Total deferred tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsGrossAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred tax assets:"
       }
      }
     },
     "localname": "DeferredTaxAssetsGrossAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment": {
     "auth_ref": [
      "r110",
      "r702"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from in-process research and development costs expensed in connection with a business combination.",
        "label": "Research and development credits",
        "verboseLabel": "Research and development credit carry forwards"
       }
      }
     },
     "localname": "DeferredTaxAssetsInProcessResearchAndDevelopment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/IncomeTaxesDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsLiabilitiesNet": {
     "auth_ref": [
      "r701"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting.",
        "label": "Deferred Tax Assets, Net",
        "negatedLabel": "Net deferred tax (liabilities)"
       }
      }
     },
     "localname": "DeferredTaxAssetsLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal": {
     "auth_ref": [
      "r110",
      "r702"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible state and local operating loss carryforwards.",
        "label": "State net operating loss carryforwards"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/IncomeTaxesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxCreditCarryforwards": {
     "auth_ref": [
      "r109",
      "r110",
      "r702"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allocation of a valuation allowances, of deferred tax assets attributable to deductible tax credit carryforwards including, but not limited to, research, foreign, general business, alternative minimum tax, and other deductible tax credit carryforwards.",
        "label": "State research and development credit carryforwards"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxCreditCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/IncomeTaxesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits": {
     "auth_ref": [
      "r110",
      "r702"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from compensation and benefits costs.",
        "label": "Deferred compensation"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefits",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities": {
     "auth_ref": [
      "r110",
      "r702"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities.",
        "label": "Accrued liabilities"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts": {
     "auth_ref": [
      "r110",
      "r702"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary difference from allowance for credit loss on accounts receivable.",
        "label": "Reserves and allowances"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r412"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.",
        "label": "Less valuation allowance"
       }
      }
     },
     "localname": "DeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred tax liabilities:"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets": {
     "auth_ref": [
      "r110",
      "r702"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from intangible assets other than goodwill.",
        "label": "Deferred Tax Liabilities, Intangible Assets",
        "negatedLabel": "Intangibles, net"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesOther": {
     "auth_ref": [
      "r110",
      "r702"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences classified as other.",
        "label": "Deferred Tax Liabilities, Other",
        "negatedLabel": "Other"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesOtherComprehensiveIncome": {
     "auth_ref": [
      "r110",
      "r702"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from unrealized gains in other comprehensive income.",
        "label": "Deferred Tax Liabilities, Other Comprehensive Income",
        "negatedLabel": "Other comprehensive income"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesOtherComprehensiveIncome",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesPrepaidExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax consequences attributable to taxable temporary differences derived from prepaid expenses.",
        "label": "Deferred Tax Liabilities, Prepaid Expenses",
        "negatedLabel": "Prepaids"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesPrepaidExpenses",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": {
     "auth_ref": [
      "r110",
      "r702"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment.",
        "label": "Deferred Tax Liabilities, Property, Plant and Equipment",
        "negatedLabel": "Property and equipment, net"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationAndAmortization": {
     "auth_ref": [
      "r47",
      "r80"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 4.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.",
        "label": "Depreciation and amortization"
       }
      }
     },
     "localname": "DepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "auth_ref": [
      "r47",
      "r248"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.",
        "label": "Depreciation, Depletion and Amortization",
        "verboseLabel": "Depreciation and amortization"
       }
      }
     },
     "localname": "DepreciationDepletionAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "auth_ref": [],
     "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": "Disaggregation of Revenue [Line Items]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "auth_ref": [
      "r345",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about 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 [Table]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement [Abstract]"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock": {
     "auth_ref": [
      "r94",
      "r105"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of share-based payment arrangement.",
        "label": "Stock-Based Compensation"
       }
      }
     },
     "localname": "DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Abstract]"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r199",
      "r217",
      "r218",
      "r220",
      "r221",
      "r222",
      "r228",
      "r230",
      "r233",
      "r234",
      "r235",
      "r239",
      "r450",
      "r451",
      "r520",
      "r526",
      "r572"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.",
        "label": "Basic",
        "verboseLabel": "Basic earnings per share"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails",
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareBasicAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings per common share:"
       }
      }
     },
     "localname": "EarningsPerShareBasicAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r199",
      "r217",
      "r218",
      "r220",
      "r221",
      "r222",
      "r230",
      "r233",
      "r234",
      "r235",
      "r239",
      "r450",
      "r451",
      "r520",
      "r526",
      "r572"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) for 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",
        "verboseLabel": "Diluted earnings per share"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails",
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "auth_ref": [
      "r54",
      "r55"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.",
        "label": "Net Income per Share"
       }
      }
     },
     "localname": "EarningsPerSharePolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r236",
      "r237",
      "r238",
      "r240"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "Earnings per Share"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/EarningsPerShare"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r208",
      "r402",
      "r425"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss).",
        "label": "Federal income tax expense at statutory rate"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r698",
      "r706"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the valuation allowance for deferred tax assets.",
        "label": "Change in valuation allowance"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate": {
     "auth_ref": [
      "r425",
      "r698"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the income tax rates.",
        "label": "- Other permanent differences"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment": {
     "auth_ref": [
      "r698",
      "r706"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to research and development expense.",
        "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Research and Development, Percent",
        "negatedLabel": "Research and development credits"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationNondeductibleExpenseResearchAndDevelopment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments": {
     "auth_ref": [
      "r698",
      "r706"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.",
        "label": "Other"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationOtherAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of the difference, between reported income tax expense (benefit) and the expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations, that is attributable to tax exempt income, equity in earnings (loss) of an unconsolidated subsidiary, minority interest income (expense), tax holiday, disposition of a business, disposition of an asset, repatriation of foreign earnings, repatriation of foreign earnings jobs creation act of 2004, change in enacted tax rate, prior year income taxes, change in deferred tax asset valuation allowance, and other adjustments.",
        "label": "Effective income tax rate"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Permanent differences:"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationOtherReconcilingItemsPercentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent": {
     "auth_ref": [
      "r696",
      "r698"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to expense for award under share-based payment arrangement. Excludes expense determined to be nondeductible upon grant or after for award under share-based payment arrangement.",
        "label": "- Stock based compensation"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r698",
      "r706"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit).",
        "label": "State income tax expense, net of federal tax benefit"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBenefitFromIncomeTaxesAndEffectiveTaxRatesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r390"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.",
        "label": "Unrecognized stock-based compensation"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r390"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Unrecognized stock-based compensation recognition period"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EmployeeStockOptionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.",
        "label": "Share-Based Payment Arrangement, Option [Member]"
       }
      }
     },
     "localname": "EmployeeStockOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/EarningsPerShareDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tangible personal property used to produce goods and services.",
        "label": "Equipment [Member]"
       }
      }
     },
     "localname": "EquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Abstract]"
       }
      }
     },
     "localname": "EquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r87",
      "r163",
      "r194",
      "r195",
      "r196",
      "r210",
      "r211",
      "r212",
      "r214",
      "r223",
      "r226",
      "r242",
      "r276",
      "r325",
      "r391",
      "r392",
      "r393",
      "r419",
      "r420",
      "r449",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r476",
      "r500",
      "r531",
      "r532",
      "r533"
     ],
     "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."
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/EarningsPerShareDetailsNarrative",
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity",
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityMethodInvestmentOwnershipPercentage": {
     "auth_ref": [
      "r67"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting.",
        "label": "Equity method investment ownership percentage"
       }
      }
     },
     "localname": "EquityMethodInvestmentOwnershipPercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EquityMethodInvestmentsPolicy": {
     "auth_ref": [
      "r43",
      "r68",
      "r135"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for equity method of accounting for investments and other interests. Investment includes, but is not limited to, unconsolidated subsidiary, corporate joint venture, noncontrolling interest in real estate venture, limited partnership, and limited liability company. Information includes, but is not limited to, ownership percentage, reason equity method is or is not considered appropriate, and accounting policy election for distribution received.",
        "label": "Equity-Method Investments"
       }
      }
     },
     "localname": "EquityMethodInvestmentsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": {
     "auth_ref": [],
     "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": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": {
     "auth_ref": [
      "r453",
      "r454",
      "r459"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis.",
        "label": "Fair Value, Recurring and Nonrecurring [Table]"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock": {
     "auth_ref": [
      "r127",
      "r128",
      "r129",
      "r131",
      "r132"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of financial instruments measured at fair value, including those classified in shareholders' equity measured on a recurring or nonrecurring basis. Disclosures include, but are not limited to, fair value measurements recorded and the reasons for the measurements, level within the fair value hierarchy in which the fair value measurements are categorized and transfers between levels 1 and 2. Nonrecurring fair value measurements are those that are required or permitted in the statement of financial position in particular circumstances.",
        "label": "Schedule of Changes in Fair Value Measurement"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/FairValueMeasurementsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems": {
     "auth_ref": [],
     "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": "Fair Value Measurement Inputs and Valuation Techniques [Line Items]"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable": {
     "auth_ref": [
      "r130"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about input and valuation technique used to measure fair value and change in valuation approach and technique for each separate class of asset and liability measured on recurring and nonrecurring basis.",
        "label": "Fair Value Measurement Inputs and Valuation Techniques [Table]"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock": {
     "auth_ref": [
      "r130"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of input and valuation technique used to measure fair value and change in valuation approach and technique for each separate class of asset and liability measured on recurring and nonrecurring basis.",
        "label": "Schedule of Contingent Consideration Common Stock and Warrants"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/FairValueMeasurementsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock": {
     "auth_ref": [
      "r127",
      "r128"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of assets, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, by class that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).",
        "label": "Schedule of Fair Value Assets and Liabilities"
       }
      }
     },
     "localname": "FairValueAssetsMeasuredOnRecurringBasisTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/FairValueMeasurementsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "auth_ref": [
      "r309",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r454",
      "r503",
      "r504",
      "r505",
      "r576",
      "r577",
      "r586",
      "r587",
      "r588"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.",
        "label": "Fair Value Hierarchy and NAV [Axis]"
       }
      }
     },
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails",
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByMeasurementFrequencyAxis": {
     "auth_ref": [
      "r453",
      "r454",
      "r456",
      "r457",
      "r460"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by measurement frequency.",
        "label": "Measurement Frequency [Axis]"
       }
      }
     },
     "localname": "FairValueByMeasurementFrequencyAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Disclosures [Abstract]"
       }
      }
     },
     "localname": "FairValueDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "auth_ref": [
      "r458"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.",
        "label": "Fair Value Measurements"
       }
      }
     },
     "localname": "FairValueDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/FairValueMeasurements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueInputsLevel1Member": {
     "auth_ref": [
      "r309",
      "r351",
      "r356",
      "r454",
      "r503",
      "r586",
      "r587",
      "r588"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date.",
        "label": "Fair Value, Inputs, Level 1 [Member]"
       }
      }
     },
     "localname": "FairValueInputsLevel1Member",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails",
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel2Member": {
     "auth_ref": [
      "r309",
      "r351",
      "r356",
      "r454",
      "r504",
      "r576",
      "r577",
      "r586",
      "r587",
      "r588"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets.",
        "label": "Fair Value, Inputs, Level 2 [Member]"
       }
      }
     },
     "localname": "FairValueInputsLevel2Member",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails",
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "auth_ref": [
      "r309",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r454",
      "r505",
      "r576",
      "r577",
      "r586",
      "r587",
      "r588"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Inputs, Level 3 [Member]"
       }
      }
     },
     "localname": "FairValueInputsLevel3Member",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementFrequencyDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement frequency."
       }
      }
     },
     "localname": "FairValueMeasurementFrequencyDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "auth_ref": [
      "r309",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r503",
      "r504",
      "r505",
      "r576",
      "r577",
      "r586",
      "r587",
      "r588"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value."
       }
      }
     },
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails",
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementsRecurringMember": {
     "auth_ref": [
      "r458",
      "r460"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Frequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, frequently measured at fair value.",
        "label": "Fair Value, Recurring [Member]"
       }
      }
     },
     "localname": "FairValueMeasurementsRecurringMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FinancingReceivableAllowanceForCreditLosses": {
     "auth_ref": [
      "r62",
      "r182",
      "r279",
      "r280",
      "r282",
      "r560",
      "r561",
      "r562",
      "r727"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on financing receivable. Excludes allowance for financing receivable covered under loss sharing agreement.",
        "label": "Allowance for Credit Losses"
       }
      }
     },
     "localname": "FinancingReceivableAllowanceForCreditLosses",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Estimated useful lives in years"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r174",
      "r292"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Less accumulated amortization"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r76"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2023"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r76"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2024"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r290",
      "r291",
      "r292",
      "r293",
      "r511",
      "r515"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by major type or class of finite-lived intangible assets.",
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r75",
      "r515"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Intangible assets, gross"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsLineItems": {
     "auth_ref": [],
     "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": "Finite-Lived Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r71",
      "r74"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company."
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r75",
      "r511"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Net",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1": {
     "auth_ref": [
      "r511"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Remaining amortization period of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Finite lived intangible assets remaining amortization period"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsRemainingAmortizationPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_GainLossOnDispositionOfAssets1": {
     "auth_ref": [
      "r626"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 2.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee.",
        "label": "Loss on disposition of assets",
        "negatedLabel": "Loss on disposition of assets"
       }
      }
     },
     "localname": "GainLossOnDispositionOfAssets1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows",
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GainLossOnSaleOfInvestments": {
     "auth_ref": [
      "r47"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 4.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net realized gain (loss) on investments sold during the period, not including gains (losses) on securities separately or otherwise categorized as trading, available-for-sale, or held-to-maturity, which, for cash flow reporting, is a component of proceeds from investing activities.",
        "label": "Loss on equity method investment in joint venture",
        "negatedLabel": "Loss from equity method investment"
       }
      }
     },
     "localname": "GainLossOnSaleOfInvestments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows",
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r36"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.",
        "label": "General and administrative"
       }
      }
     },
     "localname": "GeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeographicConcentrationRiskMember": {
     "auth_ref": [
      "r57",
      "r543"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reflects the percentage that a specified dollar value on the balance sheet or income statement in the period from one or more specified geographic areas is to a corresponding consolidated, segment, or product line amount. Risk is the materially adverse effects of economic decline or antagonistic political actions resulting in loss of assets, sales volume, labor supply, or source of materials and supplies in a US state or a specified country, continent, or region such as EMEA (Europe, Middle East, Africa).",
        "label": "Geographic Concentration Risk [Member]"
       }
      }
     },
     "localname": "GeographicConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r173",
      "r286",
      "r516",
      "r575",
      "r594",
      "r651",
      "r658"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill",
        "periodEndLabel": "Goodwill - ending",
        "periodStartLabel": "Goodwil - beginning"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets",
      "http://codiagnostics.com/role/GoodwillAndIntangibleAssetsDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails",
      "http://codiagnostics.com/role/ScheduleOfGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r77"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for goodwill and intangible assets.",
        "label": "Goodwill and Intangible Assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/GoodwillAndIntangibleAssets"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": {
     "auth_ref": [
      "r69",
      "r72"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for goodwill and intangible assets. This accounting policy also may address how an entity assesses and measures impairment of goodwill and intangible assets.",
        "label": "Goodwill and Intangible Assets, Policy [Policy Text Block]",
        "verboseLabel": "Goodwill and Intangible Assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillImpairmentLoss": {
     "auth_ref": [
      "r47",
      "r287",
      "r288",
      "r289",
      "r575"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 5.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill impairment charges",
        "negatedLabel": "Goodwill impairment charges"
       }
      }
     },
     "localname": "GoodwillImpairmentLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfGoodwillDetails",
      "http://codiagnostics.com/role/StatementsOfCashFlows",
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillPeriodIncreaseDecrease": {
     "auth_ref": [
      "r659"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Increase of goodwill"
       }
      }
     },
     "localname": "GoodwillPeriodIncreaseDecrease",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillTranslationAndPurchaseAccountingAdjustments": {
     "auth_ref": [
      "r114",
      "r659"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) from foreign currency translation adjustments and purchase accounting adjustments of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Measurement period adjustments"
       }
      }
     },
     "localname": "GoodwillTranslationAndPurchaseAccountingAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r34",
      "r207",
      "r250",
      "r252",
      "r256",
      "r258",
      "r272",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r461",
      "r574",
      "r664"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "auth_ref": [
      "r78",
      "r84"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.",
        "label": "Long-lived Assets"
       }
      }
     },
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InProcessResearchAndDevelopmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "In process investigation of new knowledge useful in developing new product or service or new process or technique or improvement to existing product or process, and translation of knowledge into plan or design for new product or process or for improvement to existing product or process.",
        "label": "In Process Research and Development [Member]"
       }
      }
     },
     "localname": "InProcessResearchAndDevelopmentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r30",
      "r137",
      "r143",
      "r156",
      "r250",
      "r252",
      "r256",
      "r258",
      "r521",
      "r574"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "totalLabel": "Income (loss) before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r208",
      "r403",
      "r408",
      "r414",
      "r421",
      "r426",
      "r428",
      "r429",
      "r430"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r209",
      "r225",
      "r226",
      "r249",
      "r401",
      "r422",
      "r427",
      "r527"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "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": "Income tax provision (benefit)",
        "totalLabel": "Total income tax (benefit) expense"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfComponentsIncomeTaxProvisionDetails",
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r193",
      "r397",
      "r398",
      "r408",
      "r409",
      "r413",
      "r416"
     ],
     "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 Tax, Policy [Policy Text Block]",
        "verboseLabel": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxReceivable": {
     "auth_ref": [
      "r147",
      "r618"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount as of the balance sheet date of income taxes previously overpaid to tax authorities (such as U.S. Federal, state and local tax authorities) representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes. Also called income tax refund receivable.",
        "label": "Income taxes receivable"
       }
      }
     },
     "localname": "IncomeTaxReceivable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "auth_ref": [
      "r51"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.",
        "label": "Income taxes paid"
       }
      }
     },
     "localname": "IncomeTaxesPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 16.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid.",
        "label": "Accounts payable, accrued expenses and other liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 11.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": "Increase (Decrease) in Accounts Receivable",
        "negatedLabel": "Accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 15.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction.",
        "label": "Increase (Decrease) in Income Taxes Payable",
        "verboseLabel": "Income taxes payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": {
     "auth_ref": [
      "r508",
      "r625"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 14.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.",
        "label": "Increase (Decrease) in Contract with Customer, Liability",
        "verboseLabel": "Deferred revenue"
       }
      }
     },
     "localname": "IncreaseDecreaseInContractWithCustomerLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 13.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": "Increase (Decrease) in Inventories",
        "negatedLabel": "Inventory"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changes in assets and liabilities:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidExpense": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods.",
        "label": "Increase (Decrease) in Prepaid Expense",
        "negatedLabel": "Prepaid expenses"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "auth_ref": [
      "r70",
      "r73"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.",
        "label": "Intangible assets, net"
       }
      }
     },
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets",
      "http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestIncomeOther": {
     "auth_ref": [],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 1.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of interest income earned from interest bearing assets classified as other.",
        "label": "Interest income"
       }
      }
     },
     "localname": "InterestIncomeOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaidNet": {
     "auth_ref": [
      "r201",
      "r203",
      "r204"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.",
        "label": "Interest paid"
       }
      }
     },
     "localname": "InterestPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryFinishedGoods": {
     "auth_ref": [
      "r619"
     ],
     "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": "Inventory, finished goods, gross"
       }
      }
     },
     "localname": "InventoryFinishedGoods",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r184",
      "r564",
      "r594"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "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": "Inventory",
        "verboseLabel": "Inventory, net"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets",
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "auth_ref": [
      "r169",
      "r183",
      "r241",
      "r283",
      "r284",
      "r285",
      "r509",
      "r568"
     ],
     "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": "Inventory, Policy [Policy Text Block]",
        "verboseLabel": "Inventory"
       }
      }
     },
     "localname": "InventoryPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryRawMaterials": {
     "auth_ref": [
      "r620"
     ],
     "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": "Inventory, raw materials, gross"
       }
      }
     },
     "localname": "InventoryRawMaterials",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCost": {
     "auth_ref": [
      "r493",
      "r593"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease cost recognized by lessee for lease contract.",
        "label": "Lease, Cost",
        "totalLabel": "Total lease costs"
       }
      }
     },
     "localname": "LeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r713"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.",
        "label": "Schedule of Lease Expense"
       }
      }
     },
     "localname": "LeaseCostTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/CommitmentsAndContingenciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeaseholdImprovementsMember": {
     "auth_ref": [
      "r81"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additions or improvements to assets held under a lease arrangement.",
        "label": "Leasehold Improvements [Member]"
       }
      }
     },
     "localname": "LeaseholdImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseholdsAndLeaseholdImprovementsMember": {
     "auth_ref": [
      "r81"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Asset held by lessee under finance lease and addition or improvement to asset held under lease arrangement.",
        "label": "Leaseholds and Leasehold Improvements [Member]"
       }
      }
     },
     "localname": "LeaseholdsAndLeaseholdImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r714"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.",
        "label": "Schedule of Maturities on Company Lease Liabilities"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/CommitmentsAndContingenciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r494"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.",
        "label": "Lessee, Operating Lease, Liability, to be Paid",
        "totalLabel": "Total lease payments"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": {
     "auth_ref": [
      "r494"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Thereafter"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r494"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year One",
        "verboseLabel": "2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": {
     "auth_ref": [
      "r494"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2027"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r494"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2026"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r494"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r494"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two",
        "verboseLabel": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r494"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.",
        "label": "Less: imputed interest"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r18",
      "r207",
      "r272",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r437",
      "r438",
      "r439",
      "r461",
      "r573",
      "r664",
      "r718",
      "r719"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "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": "Liabilities",
        "totalLabel": "Total liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r14",
      "r140",
      "r151",
      "r594",
      "r628",
      "r648",
      "r712"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "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": "Liabilities and Equity",
        "totalLabel": "Total liabilities and stockholders\u2019 equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and stockholders\u2019 equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r20",
      "r168",
      "r207",
      "r272",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r437",
      "r438",
      "r439",
      "r461",
      "r594",
      "r664",
      "r718",
      "r719"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "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": "Liabilities, Current",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesFairValueDisclosure": {
     "auth_ref": [
      "r127"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of financial and nonfinancial obligations.",
        "label": "Total liabilities measured at fair value"
       }
      }
     },
     "localname": "LiabilitiesFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesNoncurrent": {
     "auth_ref": [
      "r1",
      "r2",
      "r3",
      "r4",
      "r5",
      "r207",
      "r272",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r437",
      "r438",
      "r439",
      "r461",
      "r664",
      "r718",
      "r719"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation due after one year or beyond the normal operating cycle, if longer.",
        "label": "Liabilities, Noncurrent",
        "totalLabel": "Total long-term liabilities"
       }
      }
     },
     "localname": "LiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesNoncurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-term liabilities"
       }
      }
     },
     "localname": "LiabilitiesNoncurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_MarketableSecurities": {
     "auth_ref": [
      "r142"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of investment in marketable security.",
        "label": "Marketable Securities",
        "verboseLabel": "Marketable securities (certificates of deposit)"
       }
      }
     },
     "localname": "MarketableSecurities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails",
      "http://codiagnostics.com/role/ScheduleOfFairValueAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MarketableSecuritiesCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of investment in marketable security, classified as current.",
        "label": "Marketable investment securities"
       }
      }
     },
     "localname": "MarketableSecuritiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MarketableSecuritiesPolicy": {
     "auth_ref": [
      "r145"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for investment classified as marketable security.",
        "label": "Marketable Investment Securities"
       }
      }
     },
     "localname": "MarketableSecuritiesPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_MarketableSecuritiesUnrealizedGainLoss": {
     "auth_ref": [
      "r32"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of unrealized gain (loss) on investment in marketable security.",
        "label": "Total Unrealized Gains / (Losses)"
       }
      }
     },
     "localname": "MarketableSecuritiesUnrealizedGainLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MeasurementInputDiscountRateMember": {
     "auth_ref": [
      "r710"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement input using interest rate to determine present value of future cash flows.",
        "label": "Measurement Input, Discount Rate [Member]"
       }
      }
     },
     "localname": "MeasurementInputDiscountRateMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MeasurementInputExpectedTermMember": {
     "auth_ref": [
      "r710"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement input using period financial instrument is expected to be outstanding. Excludes maturity date.",
        "label": "Measurement Input, Expected Term [Member]"
       }
      }
     },
     "localname": "MeasurementInputExpectedTermMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MeasurementInputPriceVolatilityMember": {
     "auth_ref": [
      "r710"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement input using rate at which price of security will increase (decrease) for given set of returns.",
        "label": "Measurement Input, Price Volatility [Member]"
       }
      }
     },
     "localname": "MeasurementInputPriceVolatilityMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MeasurementInputRiskFreeInterestRateMember": {
     "auth_ref": [
      "r710"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement input using interest rate on instrument with zero risk of financial loss.",
        "label": "Measurement Input, Risk Free Interest Rate [Member]"
       }
      }
     },
     "localname": "MeasurementInputRiskFreeInterestRateMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MeasurementInputSharePriceMember": {
     "auth_ref": [
      "r710"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement input using share price of saleable stock.",
        "label": "Measurement Input, Share Price [Member]"
       }
      }
     },
     "localname": "MeasurementInputSharePriceMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MeasurementInputTypeAxis": {
     "auth_ref": [
      "r455"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of measurement input used to determine value of asset and liability.",
        "label": "Measurement Input Type [Axis]"
       }
      }
     },
     "localname": "MeasurementInputTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_MeasurementInputTypeDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement input used to determine value of asset and liability."
       }
      }
     },
     "localname": "MeasurementInputTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MoneyMarketFundsMember": {
     "auth_ref": [
      "r669"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fund that invests in short-term money-market instruments, for example, but not limited to, commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and other highly liquid securities.",
        "label": "Money Market Funds [Member]"
       }
      }
     },
     "localname": "MoneyMarketFundsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r202"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "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 Provided by (Used in) Financing Activities",
        "totalLabel": "Net cash (used in) provided by financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r202"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "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 (used in) provided by investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r44",
      "r45",
      "r48"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "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 Provided by (Used in) Operating Activities",
        "totalLabel": "Net cash provided by operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r31",
      "r48",
      "r144",
      "r155",
      "r166",
      "r188",
      "r191",
      "r196",
      "r207",
      "r213",
      "r217",
      "r218",
      "r220",
      "r221",
      "r225",
      "r226",
      "r232",
      "r250",
      "r252",
      "r256",
      "r258",
      "r272",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r451",
      "r461",
      "r574",
      "r664"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "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",
        "totalLabel": "Net income (loss)",
        "verboseLabel": "Net income, as reported"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails",
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity",
      "http://codiagnostics.com/role/StatementsOfCashFlows",
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.",
        "label": "Recently Issued Accounting Standards"
       }
      }
     },
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NoncashInvestingAndFinancingItemsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental disclosure of non-cash investing and financing transactions"
       }
      }
     },
     "localname": "NoncashInvestingAndFinancingItemsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NoncompeteAgreementsMember": {
     "auth_ref": [
      "r119"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.",
        "label": "Noncompete Agreements [Member]"
       }
      }
     },
     "localname": "NoncompeteAgreementsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "auth_ref": [
      "r37"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).",
        "label": "Nonoperating Income (Expense)",
        "totalLabel": "Total other income (expense)"
       }
      }
     },
     "localname": "NonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NonoperatingIncomeExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other income (expense)"
       }
      }
     },
     "localname": "NonoperatingIncomeExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NotesAndLoansReceivableNetCurrent": {
     "auth_ref": [
      "r263",
      "r264",
      "r517"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amortized cost, after allowance for credit loss, of financing receivable classified as current. Excludes net investment in lease.",
        "label": "Note receivable"
       }
      }
     },
     "localname": "NotesAndLoansReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NotesAndLoansReceivableNetNoncurrent": {
     "auth_ref": [],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of financing receivable, classified as noncurrent.",
        "label": "Financing Receivable, after Allowance for Credit Loss, Noncurrent",
        "verboseLabel": "Note receivable"
       }
      }
     },
     "localname": "NotesAndLoansReceivableNetNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OfficeEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tangible personal property used in an office setting. Examples include, but are not limited to, computers, copiers and fax machine.",
        "label": "Office Equipment [Member]"
       }
      }
     },
     "localname": "OfficeEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OperatingExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.",
        "label": "Operating Expenses",
        "totalLabel": "Total operating expenses"
       }
      }
     },
     "localname": "OperatingExpenses",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating expenses"
       }
      }
     },
     "localname": "OperatingExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r250",
      "r252",
      "r256",
      "r258",
      "r574"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "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 Income (Loss)",
        "totalLabel": "Income (loss) from operations"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseCost": {
     "auth_ref": [
      "r487",
      "r593"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.",
        "label": "Operating lease costs"
       }
      }
     },
     "localname": "OperatingLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r485"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.",
        "label": "Present value of operating lease liabilities",
        "verboseLabel": "Operating lease liability"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails",
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r485"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.",
        "label": "Operating lease liability, current",
        "verboseLabel": "Less: current portion"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets",
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r485"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.",
        "label": "Operating lease liability",
        "verboseLabel": "Long-term portion"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets",
      "http://codiagnostics.com/role/ScheduleOfMaturitiesOnCompanyLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r486",
      "r489"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.",
        "label": "Cash paid for operating leases included in operating cash flows"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOtherInformationRelatedToOperatingLeaseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r484"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under operating lease.",
        "label": "Operating lease right-of-use asset",
        "verboseLabel": "Operating right use of asset"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets",
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r492",
      "r593"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average discount rate for operating lease calculated at point in time.",
        "label": "Discount rate of operating leases"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOtherInformationRelatedToOperatingLeaseDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r491",
      "r593"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Remaining lease term of operating leases"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOtherInformationRelatedToOperatingLeaseDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingLossCarryforwards": {
     "auth_ref": [
      "r109"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.",
        "label": "Net operating loss carry-forwards"
       }
      }
     },
     "localname": "OperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/IncomeTaxesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r19"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.",
        "label": "Other accrued liabilities"
       }
      }
     },
     "localname": "OtherAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossBeforeTax": {
     "auth_ref": [
      "r66",
      "r197",
      "r470",
      "r475",
      "r476",
      "r518",
      "r524",
      "r622",
      "r623"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 2.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before tax, after reclassification adjustments of other comprehensive income (loss).",
        "label": "Total other comprehensive income"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r29",
      "r87",
      "r189",
      "r192",
      "r197",
      "r470",
      "r475",
      "r476",
      "r518",
      "r524",
      "r622",
      "r623"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax and reclassification adjustments of other comprehensive income (loss).",
        "label": "Other comprehensive income, net of tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other comprehensive income"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax": {
     "auth_ref": [
      "r186",
      "r187"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 1.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossBeforeTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax and before adjustment, of unrealized holding gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Excludes unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale.",
        "label": "Change in net unrealized gains on marketable securities, net of tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PayablesAndAccrualsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payables and Accruals [Abstract]"
       }
      }
     },
     "localname": "PayablesAndAccrualsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "auth_ref": [
      "r42"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow to reacquire common stock during the period.",
        "label": "Payments for Repurchase of Common Stock",
        "negatedLabel": "Repurchases of common stock"
       }
      }
     },
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": {
     "auth_ref": [
      "r39"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.",
        "label": "Payments to Acquire Businesses, Net of Cash Acquired",
        "negatedLabel": "Business combinations, net of cash acquired"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireMarketableSecurities": {
     "auth_ref": [
      "r64"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow for purchase of marketable security.",
        "label": "Payments to Acquire Marketable Securities",
        "negatedLabel": "Purchases of marketable securities"
       }
      }
     },
     "localname": "PaymentsToAcquireMarketableSecurities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r40"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "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": "Payments to Acquire Property, Plant, and Equipment",
        "negatedLabel": "Purchases of property and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PlanNameAxis": {
     "auth_ref": [
      "r670",
      "r671",
      "r672",
      "r673",
      "r674",
      "r675",
      "r676",
      "r677",
      "r678",
      "r679",
      "r680",
      "r681",
      "r682",
      "r683",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r690",
      "r691",
      "r692",
      "r693",
      "r694",
      "r695"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by plan name for share-based payment arrangement.",
        "label": "Plan Name [Axis]"
       }
      }
     },
     "localname": "PlanNameAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PlanNameDomain": {
     "auth_ref": [
      "r670",
      "r671",
      "r672",
      "r673",
      "r674",
      "r675",
      "r676",
      "r677",
      "r678",
      "r679",
      "r680",
      "r681",
      "r682",
      "r683",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r690",
      "r691",
      "r692",
      "r693",
      "r694",
      "r695"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plan name for share-based payment arrangement."
       }
      }
     },
     "localname": "PlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PreferredStockMember": {
     "auth_ref": [],
     "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 [Member]"
       }
      }
     },
     "localname": "PreferredStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r8",
      "r310"
     ],
     "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": "Convertible preferred stock, par value"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r8"
     ],
     "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": "Convertible preferred stock , shares authorized"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r8",
      "r310"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.",
        "label": "Convertible preferred stock, shares issued"
       }
      }
     },
     "localname": "PreferredStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r8"
     ],
     "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": "Convertible preferred stock, shares outstanding"
       }
      }
     },
     "localname": "PreferredStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r8",
      "r594"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "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": "Convertible preferred stock, $0.001 par value; 5,000,000 shares authorized; 0 shares issued and outstanding as of December 31, 2022 and December 31, 2021, respectively"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "auth_ref": [
      "r621"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 6.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 costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.",
        "label": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromDivestitureOfInterestInJointVenture": {
     "auth_ref": [
      "r38"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from the sale of an investment interest in a joint venture that the reporting entity has not previously accounted for using consolidation or the equity method of accounting.",
        "label": "Proceeds from Divestiture of Interest in Joint Venture",
        "verboseLabel": "Investment in joint venture"
       }
      }
     },
     "localname": "ProceedsFromDivestitureOfInterestInJointVenture",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfCommonStock": {
     "auth_ref": [
      "r41"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from the additional capital contribution to the entity.",
        "label": "Proceeds from exercise of options and warrants"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleAndMaturityOfMarketableSecurities": {
     "auth_ref": [],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow associated with the aggregate amount received by the entity through sale or maturity of marketable securities (held-to-maturity or available-for-sale) during the period.",
        "label": "Proceeds from maturities of marketable investment securities"
       }
      }
     },
     "localname": "ProceedsFromSaleAndMaturityOfMarketableSecurities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductInformationLineItems": {
     "auth_ref": [],
     "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": "Product Information [Line Items]"
       }
      }
     },
     "localname": "ProductInformationLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r83"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.",
        "label": "Long-Lived Tangible Asset [Axis]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r85",
      "r545",
      "r546",
      "r547"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/PropertyAndEquipment"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r81",
      "r171"
     ],
     "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 and equipment, gross"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "auth_ref": [],
     "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": "Property, Plant and Equipment [Line Items]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r83",
      "r152",
      "r522",
      "r594"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "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": "Property and equipment, net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets",
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r83"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Schedule of Property and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/PropertyAndEquipmentTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r81"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software."
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.",
        "label": "Property and equipment estimated useful lives"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r200",
      "r281"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.",
        "label": "Bad debt expense"
       }
      }
     },
     "localname": "ProvisionForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RealEstateInvestmentsJointVentures": {
     "auth_ref": [
      "r154"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The book value of investments in real estate joint ventures including direct and indirect investments.",
        "label": "Investment in joint venture"
       }
      }
     },
     "localname": "RealEstateInvestmentsJointVentures",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "auth_ref": [
      "r106",
      "r157",
      "r726"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.",
        "label": "Research and development",
        "verboseLabel": "Research and development costs"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss",
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpensePolicy": {
     "auth_ref": [
      "r106"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for costs it has incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process.",
        "label": "Research and Development"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpensePolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember": {
     "auth_ref": [
      "r170"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of cash and cash equivalent. Cash is 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."
       }
      }
     },
     "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RestrictedStockMember": {
     "auth_ref": [
      "r54"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met.",
        "label": "Restricted Stock [Member]"
       }
      }
     },
     "localname": "RestrictedStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RestrictedStockUnitsRSUMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met.",
        "label": "Restricted Stock Units (RSUs) [Member]"
       }
      }
     },
     "localname": "RestrictedStockUnitsRSUMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/EarningsPerShareDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails",
      "http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails",
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r11",
      "r88",
      "r150",
      "r535",
      "r540",
      "r594"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Accumulated earnings"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r163",
      "r210",
      "r211",
      "r212",
      "r214",
      "r223",
      "r226",
      "r276",
      "r391",
      "r392",
      "r393",
      "r419",
      "r420",
      "r449",
      "r531",
      "r533"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings [Member]"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer [Abstract]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r246",
      "r247",
      "r251",
      "r254",
      "r255",
      "r259",
      "r260",
      "r262",
      "r344",
      "r345",
      "r510"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "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"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": {
     "auth_ref": [
      "r246",
      "r247",
      "r251",
      "r254",
      "r255",
      "r259",
      "r260",
      "r262",
      "r344",
      "r345",
      "r510"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, including 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 from Contract with Customer, Including Assessed Tax",
        "verboseLabel": "Revenue"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerIncludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "auth_ref": [
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r349",
      "r569"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue from contract with customer.",
        "label": "Deferred Revenue"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "auth_ref": [
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r348",
      "r349"
     ],
     "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 from Contract with Customer [Text Block]",
        "verboseLabel": "Revenue"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Revenue"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueRecognitionPolicyTextBlock": {
     "auth_ref": [
      "r569",
      "r570"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.",
        "label": "Revenue Recognition"
       }
      }
     },
     "localname": "RevenueRecognitionPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "auth_ref": [
      "r490",
      "r593"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability.",
        "label": "Right-of-use assets obtained in exchange for new operating lease liabilities"
       }
      }
     },
     "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SalesRevenueNetMember": {
     "auth_ref": [
      "r262",
      "r646"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation.",
        "label": "Revenue Benchmark [Member]"
       }
      }
     },
     "localname": "SalesRevenueNetMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfRevenueByGeographicAreaDetails",
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of accrued liabilities.",
        "label": "Schedule of Accrued Expenses"
       }
      }
     },
     "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/AccruedExpensesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": {
     "auth_ref": [
      "r54"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule for securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by Antidilutive Securities.",
        "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]"
       }
      }
     },
     "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/EarningsPerShareDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": {
     "auth_ref": [
      "r115",
      "r116",
      "r431"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting each material business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities.",
        "label": "Schedule of Business Acquisitions, by Acquisition [Table]"
       }
      }
     },
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsDetailsNarrative",
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock": {
     "auth_ref": [
      "r115",
      "r116"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of a material business combination completed during the period, including background, timing, and recognized assets and liabilities. This table does not include leveraged buyouts.",
        "label": "Schedule of Assets and Liabilities assumed"
       }
      }
     },
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BusinessCombinationsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfCashAndCashEquivalentsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of cash and cash equivalent balances. This table excludes restricted cash balances.",
        "label": "Schedule of Cash and Cash Equivalents [Table]"
       }
      }
     },
     "localname": "ScheduleOfCashAndCashEquivalentsTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of cash, cash equivalents, and investments.",
        "label": "Schedule of Cash, Cash Equivalents, and Marketable Investment Securities"
       }
      }
     },
     "localname": "ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/CashCashEquivalentsAndFinancialInstrumentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r111"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.",
        "label": "Schedule of Components Income Tax Provision"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r108"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.",
        "label": "Schedule of Deferred Tax Assets"
       }
      }
     },
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r644"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.",
        "label": "Schedule of Basic and Diluted Earnings Per Share"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/EarningsPerShareTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r107"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.",
        "label": "Schedule of Benefit from Income Taxes and Effective Tax Rates"
       }
      }
     },
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "auth_ref": [
      "r71",
      "r74",
      "r511"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Schedule of Finite-Lived Intangible Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfIntangibleAssetsNetDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [
      "r71",
      "r74"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.",
        "label": "Schedule of Intangible Assets, Net"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/GoodwillAndIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfGoodwillTextBlock": {
     "auth_ref": [
      "r575",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r656",
      "r657",
      "r658",
      "r659",
      "r660",
      "r661"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.",
        "label": "Schedule of Goodwill"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/GoodwillAndIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfProductInformationTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule detailing quantitative information concerning products or product lines by product or product line.",
        "label": "Schedule of Product Information [Table]"
       }
      }
     },
     "localname": "ScheduleOfProductInformationTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r83"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table]"
       }
      }
     },
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfPropertyAndEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock": {
     "auth_ref": [
      "r33",
      "r61"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the names of foreign countries from which revenue is material and the amount of revenue from external customers attributed to those countries. An entity may also provide subtotals of geographic information about groups of countries.",
        "label": "Summary of Revenue by Geographic Area"
       }
      }
     },
     "localname": "ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/RevenueTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock": {
     "auth_ref": [
      "r102",
      "r103",
      "r104"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of activity for award under share-based payment arrangement. Includes, but is not limited to, outstanding award at beginning and end of year, granted, exercised, forfeited, and weighted-average grant date fair value.",
        "label": "Schedule of Recognized Stock-based Compensation Expense"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about share-based payment arrangement.",
        "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails",
      "http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails",
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": {
     "auth_ref": [
      "r95"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited during the year.",
        "label": "Schedule of Outstanding Restricted Stock Units and Related Activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r95",
      "r103",
      "r104"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.",
        "label": "Schedule of Option Activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock": {
     "auth_ref": [
      "r91",
      "r93"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of warrants or rights issued. Warrants and rights outstanding are derivative securities that give the holder the right to purchase securities (usually equity) from the issuer at a specific price within a certain time frame. Warrants are often included in a new debt issue to entice investors by a higher return potential. The main difference between warrants and call options is that warrants are issued and guaranteed by the company, whereas options are exchange instruments and are not issued by the company. Also, the lifetime of a warrant is often measured in years, while the lifetime of a typical option is measured in months. Disclose the title of issue of securities called for by warrants and rights outstanding, the aggregate amount of securities called for by warrants and rights outstanding, the date from which the warrants or rights are exercisable, and the price at which the warrant or right is exercisable.",
        "label": "Schedule of Warrant Activity"
       }
      }
     },
     "localname": "ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock": {
     "auth_ref": [
      "r592",
      "r700"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the change in unrecognized tax benefits.",
        "label": "Schedule of Unrecognized Tax Benefits"
       }
      }
     },
     "localname": "ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": {
     "auth_ref": [
      "r74"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.",
        "label": "Schedule of Future Amortization Expense"
       }
      }
     },
     "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/GoodwillAndIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingAndMarketingExpense": {
     "auth_ref": [],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services.",
        "label": "Sales and marketing"
       }
      }
     },
     "localname": "SellingAndMarketingExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://codiagnostics.com/role/StatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement, Noncash Expense",
        "verboseLabel": "Stock-based compensation expense"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "auth_ref": [
      "r377"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period",
        "negatedLabel": "Number of Restricted Stock Units, Forfeited/Cancelled"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r377"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.",
        "label": "Weighted Average Grant Date Fair Value, Forfeited/Cancelled"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r375"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).",
        "label": "Number of Restricted Stock Units, Granted"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r375"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).",
        "label": "Weighted Average Grant Date Fair Value, Granted"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "auth_ref": [
      "r372",
      "r373"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number",
        "periodEndLabel": "Number of Restricted Stock Units, Outstanding Ending",
        "periodStartLabel": "Number of Restricted Stock Units, Outstanding Beginning"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r372",
      "r373"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value",
        "periodEndLabel": "Weighted Average Grant Date Fair Value, Outstanding Ending",
        "periodStartLabel": "Weighted Average Grant Date Fair Value, Outstanding Beginning"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r376"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period",
        "negatedLabel": "Number of Restricted Stock Units, Vested"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r376"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.",
        "label": "Weighted Average Grant Date Fair Value, Vested"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "auth_ref": [],
     "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": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails",
      "http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails",
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised": {
     "auth_ref": [
      "r99"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of non-option equity instruments exercised by participants.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Exercised",
        "negatedLabel": "Number of Warrants Outstanding, Exercised"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations": {
     "auth_ref": [
      "r101"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares under non-option equity instrument agreements for which rights to exercise lapsed.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Expirations",
        "negatedLabel": "Number of Warrants Outstanding, Expired"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures": {
     "auth_ref": [
      "r100"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares under non-option equity instrument agreements that were cancelled as a result of occurrence of a terminating event.",
        "label": "Number of Warrants Outstanding, Forfeited/Cancelled"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted": {
     "auth_ref": [
      "r98"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net number of non-option equity instruments granted to participants.",
        "label": "Number of Warrants Outstanding, Granted"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber": {
     "auth_ref": [
      "r96",
      "r97"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of equity instruments other than options outstanding, including both vested and non-vested instruments.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Outstanding, Number",
        "periodEndLabel": "Number of Warrants Outstanding, Ending",
        "periodStartLabel": "Number of Warrants Outstanding, Beginning"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfWarrantActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "auth_ref": [
      "r105"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.",
        "label": "Number of common shares availalble for issuance"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r366"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Number",
        "periodEndLabel": "Number of Options Exercisable Ending"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r366"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price",
        "periodEndLabel": "Weighted Average Exercise Price, Exercisable Ending"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "auth_ref": [
      "r379"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.",
        "label": "Intrinsic value of options value exercised"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod": {
     "auth_ref": [
      "r371"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of options or other stock instruments for which the right to exercise has lapsed under the terms of the plan agreements.",
        "label": "Number of Options Outstanding, Expired"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": {
     "auth_ref": [
      "r370"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan.",
        "label": "Number of Options Outstanding, Forfeited/Cancelled"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod": {
     "auth_ref": [
      "r677"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net number of share options (or share units) granted during the period.",
        "label": "Number of Options Outstanding, Granted"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r378"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.",
        "label": "Weighted Average Fair Value, Granted"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "auth_ref": [
      "r105"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.",
        "label": "Aggregate intrinsic value of options outstanding"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r364",
      "r365"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of options outstanding, including both vested and non-vested options.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number",
        "periodEndLabel": "Number of Options Outstanding, Ending",
        "periodStartLabel": "Number of Options Outstanding, Beginning"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r364",
      "r365"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price",
        "periodEndLabel": "Weighted Average Exercise Price Outstanding, Ending",
        "periodStartLabel": "Weighted Average Exercise Price Outstanding, Beginning"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r360",
      "r361",
      "r362",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Award under share-based payment arrangement."
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOutstandingRestrictedStockUnitsAndRelatedActivityDetails",
      "http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails",
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r369"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.",
        "label": "Weighted Average Exercise Price, Exercised"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r371"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options of the plan that expired.",
        "label": "Weighted Average Exercise Price, Expired"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r370"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated.",
        "label": "Weighted Average Exercise Price, Forfeited/Cancelled"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r368"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.",
        "label": "Weighted Average Exercise Price, Granted"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "auth_ref": [
      "r363",
      "r382",
      "r383",
      "r384",
      "r385",
      "r388",
      "r394",
      "r395"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.",
        "label": "Stock-based Compensation"
       }
      }
     },
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r105"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Weighted-average Remaining Contractual Life (years), Exercisable Ending"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average grant-date fair value of non-vested options forfeited.",
        "label": "Weighted Average Fair Value, Forfeited/Cancelled"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average grant-date fair value of non-vested options outstanding.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Option, Nonvested, Weighted Average Exercise Price",
        "periodEndLabel": "Weighted Average Fair Value Outstanding, Ending",
        "periodStartLabel": "Weighted Average Fair Value Outstanding, Beginning"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average grant-date fair value of options vested.",
        "label": "Weighted Average Fair Value, Expired"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.",
        "label": "Shares, Outstanding",
        "periodEndLabel": "Balance, shares",
        "periodStartLabel": "Balance, shares"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShortTermLeaseCost": {
     "auth_ref": [
      "r488",
      "r593"
     ],
     "calculation": {
      "http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less.",
        "label": "Short-term lease costs"
       }
      }
     },
     "localname": "ShortTermLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfLeaseExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r53",
      "r205"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "Summary of Significant Accounting Policies"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StatementClassOfStockAxis": {
     "auth_ref": [
      "r177",
      "r178",
      "r179",
      "r207",
      "r230",
      "r231",
      "r233",
      "r235",
      "r243",
      "r244",
      "r272",
      "r300",
      "r302",
      "r303",
      "r304",
      "r307",
      "r308",
      "r310",
      "r311",
      "r313",
      "r317",
      "r323",
      "r461",
      "r559",
      "r617",
      "r627",
      "r643"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by the different classes of stock of the entity.",
        "label": "Class of Stock [Axis]"
       }
      }
     },
     "localname": "StatementClassOfStockAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r23",
      "r87",
      "r163",
      "r194",
      "r195",
      "r196",
      "r210",
      "r211",
      "r212",
      "r214",
      "r223",
      "r226",
      "r242",
      "r276",
      "r325",
      "r391",
      "r392",
      "r393",
      "r419",
      "r420",
      "r449",
      "r470",
      "r471",
      "r472",
      "r473",
      "r474",
      "r476",
      "r500",
      "r531",
      "r532",
      "r533"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/EarningsPerShareDetailsNarrative",
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity",
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [],
     "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/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r210",
      "r211",
      "r212",
      "r242",
      "r510"
     ],
     "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 [Table]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockCompensationPlanMember": {
     "auth_ref": [
      "r645"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based payment arrangement in which award of equity shares are granted. Arrangement includes, but is not limited to, grantor incurring liability for product and service based on price of its shares.",
        "label": "Share-Based Payment Arrangement [Member]"
       }
      }
     },
     "localname": "StockCompensationPlanMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfRecognizedStock-basedCompensationExpenseDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesAcquisitions": {
     "auth_ref": [
      "r8",
      "r9",
      "r88"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of stock issued during the period pursuant to acquisitions.",
        "label": "Common stock issued for acquisitions, shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesAcquisitions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesIssuedForServices": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued in lieu of cash for services contributed to the entity. Number of shares includes, but is not limited to, shares issued for services contributed by vendors and founders.",
        "label": "Number of shares issued for services"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesIssuedForServices",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesOther": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of stock issued attributable to transactions classified as other.",
        "label": "Common stock issued for warrant exercises, shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).",
        "label": "Stock-based compensation expense, shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensationGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r8",
      "r9",
      "r87",
      "r88",
      "r369"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "Common stock issued for option exercises, shares",
        "negatedLabel": "Number of Options Outstanding, Exercised"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfOptionActivityDetails",
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueAcquisitions": {
     "auth_ref": [
      "r23",
      "r87",
      "r88"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of stock issued pursuant to acquisitions during the period.",
        "label": "Common stock issued for acquisitions",
        "verboseLabel": "Fair value of common shares issued"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueAcquisitions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails",
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueOther": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of shares of stock issued attributable to transactions classified as other.",
        "label": "Common stock issued for warrant exercises"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueOther",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).",
        "label": "Stock-based compensation expense"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensationGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "auth_ref": [
      "r23",
      "r87",
      "r88"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of stock issued as a result of the exercise of stock options.",
        "label": "Common stock issued for option exercises"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchaseProgramAuthorizedAmount1": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of stock repurchase plan authorized.",
        "label": "Stock repurchase program authorized amount"
       }
      }
     },
     "localname": "StockRepurchaseProgramAuthorizedAmount1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ShareRepurchaseProgramDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchasedDuringPeriodValue": {
     "auth_ref": [
      "r8",
      "r9",
      "r87",
      "r88"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.",
        "label": "Stock Repurchased During Period, Value",
        "negatedLabel": "Repurchases of common stock"
       }
      }
     },
     "localname": "StockRepurchasedDuringPeriodValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r9",
      "r12",
      "r13",
      "r63",
      "r594",
      "r628",
      "r648",
      "r712"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.",
        "label": "Stockholders' Equity Attributable to Parent",
        "periodEndLabel": "Balance",
        "periodStartLabel": "Balance",
        "totalLabel": "Total stockholders\u2019 equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets",
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders\u2019 equity"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "auth_ref": [
      "r92",
      "r206",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r325",
      "r440"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.",
        "label": "Share Repurchase Program"
       }
      }
     },
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ShareRepurchaseProgram"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubsequentEventsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Events [Abstract]"
       }
      }
     },
     "localname": "SubsequentEventsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r501",
      "r502"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.",
        "label": "Subsequent Events"
       }
      }
     },
     "localname": "SubsequentEventsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SubsequentEvents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental disclosure of cash flow information"
       }
      }
     },
     "localname": "SupplementalCashFlowInformationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxesPayableCurrent": {
     "auth_ref": [
      "r17"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 5.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 for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Income taxes payable"
       }
      }
     },
     "localname": "TaxesPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TradeAndOtherAccountsReceivablePolicy": {
     "auth_ref": [
      "r158",
      "r159",
      "r160",
      "r265",
      "r266",
      "r268"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for accounts receivable.",
        "label": "Accounts Receivable"
       }
      }
     },
     "localname": "TradeAndOtherAccountsReceivablePolicy",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_TradingSecurities": {
     "auth_ref": [
      "r142",
      "r176",
      "r566"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in net income (trading) and investment in equity security measured at fair value with change in fair value recognized in net income (FV-NI).",
        "label": "Fair Value"
       }
      }
     },
     "localname": "TradingSecurities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TradingSecuritiesDebtAmortizedCost": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amortized cost of investments in debt securities classified as trading.",
        "label": "Adjusted Cost"
       }
      }
     },
     "localname": "TradingSecuritiesDebtAmortizedCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TreasuryStockMember": {
     "auth_ref": [
      "r22",
      "r89"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Shares of an entity that have been repurchased by the entity. This stock has no voting rights and receives no dividends. Note that treasury stock may be recorded at its total cost or separately as par (or stated) value and additional paid in capital. Classified within stockholders' equity if nonredeemable or redeemable solely at the option of the issuer. Classified within temporary equity if redemption is outside the control of the issuer.",
        "label": "Treasury Stock [Member]"
       }
      }
     },
     "localname": "TreasuryStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementOfChangesInStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockShares": {
     "auth_ref": [
      "r22",
      "r89"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of common and preferred shares that were previously issued and that were repurchased by the issuing entity and held in treasury on the financial statement date. This stock has no voting rights and receives no dividends.",
        "label": "Treasury stock, shares",
        "periodEndLabel": "Treasury stock, Ending Balance",
        "periodStartLabel": "Treasury stock, Beginning Balance"
       }
      }
     },
     "localname": "TreasuryStockShares",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheetsParenthetical",
      "http://codiagnostics.com/role/ScheduleOfTreasuryStockDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockValue": {
     "auth_ref": [
      "r22",
      "r89",
      "r90"
     ],
     "calculation": {
      "http://codiagnostics.com/role/BalanceSheets": {
       "order": 3.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, Value",
        "negatedLabel": "Treasury stock, at cost; 3,881,658 and 0 shares held as of December 31, 2022 and December 31, 2021, respectively"
       }
      }
     },
     "localname": "TreasuryStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/BalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TypeOfAdoptionMember": {
     "auth_ref": [
      "r161",
      "r162",
      "r163",
      "r164",
      "r165",
      "r213",
      "r214",
      "r215",
      "r216",
      "r227",
      "r269",
      "r270",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r391",
      "r392",
      "r393",
      "r417",
      "r418",
      "r419",
      "r420",
      "r433",
      "r434",
      "r435",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r446",
      "r447",
      "r448",
      "r449",
      "r450",
      "r451",
      "r452",
      "r462",
      "r463",
      "r464",
      "r465",
      "r466",
      "r467",
      "r468",
      "r469",
      "r477",
      "r478",
      "r480",
      "r481",
      "r482",
      "r483",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r500",
      "r512",
      "r513",
      "r514",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amendment to accounting standards."
       }
      }
     },
     "localname": "TypeOfAdoptionMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/SummaryOfSignificantAccountingPoliciesDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_USTreasurySecuritiesMember": {
     "auth_ref": [
      "r571",
      "r586",
      "r588",
      "r728"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This category includes information about debt securities issued by the United States Department of the Treasury and backed by the United States government. Such securities primarily consist of treasury bills (short-term maturities - one year or less), treasury notes (intermediate term maturities - two to ten years), and treasury bonds (long-term maturities - ten to thirty years).",
        "label": "US Treasury Securities [Member]"
       }
      }
     },
     "localname": "USTreasurySecuritiesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfCashCashEquivalentsAndMarketableInvestmentSecuritiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnrecognizedTaxBenefits": {
     "auth_ref": [
      "r396",
      "r404"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of unrecognized tax benefits.",
        "label": "Unrecognized Tax Benefits",
        "periodEndLabel": "Unrecognized tax benefits at end of year",
        "periodStartLabel": "Unrecognized tax benefits at the beginning of the year"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefits",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions": {
     "auth_ref": [
      "r405"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease in unrecognized tax benefits resulting from tax positions taken in prior period tax returns.",
        "label": "Unrecognized Tax Benefits, Decrease Resulting from Prior Period Tax Positions",
        "negatedLabel": "Gross decreases- prior year tax positions"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued": {
     "auth_ref": [
      "r699"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of statutory penalties accrued for a tax position claimed or expected to be claimed by the entity, in its tax return.",
        "label": "Unrecognized Tax Benefits, Income Tax Penalties Accrued",
        "periodEndLabel": "Interest and penalities in year- end balance"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions": {
     "auth_ref": [
      "r406"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.",
        "label": "Gross increases - current year tax positions"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions": {
     "auth_ref": [
      "r405"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions taken in prior period tax returns.",
        "label": "Gross increases - prior year tax positions"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate": {
     "auth_ref": [
      "r407"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The total amount of unrecognized tax benefits that, if recognized, would affect the effective tax rate.",
        "label": "Unrecognized tax benefits that would impact effective tax rate"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/IncomeTaxesDetailsNarrative"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_WarrantMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Security that gives the holder the right to purchase shares of stock in accordance with the terms of the instrument, usually upon payment of a specified amount.",
        "label": "Warrant [Member]"
       }
      }
     },
     "localname": "WarrantMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/EarningsPerShareDetailsNarrative",
      "http://codiagnostics.com/role/Stock-basedCompensationDetailsNarrative"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WarrantsAndRightsOutstandingMeasurementInput": {
     "auth_ref": [
      "r457"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of input used to measure outstanding warrant and right embodying unconditional obligation requiring redemption by transferring asset at specified or determinable date or upon event certain to occur.",
        "label": "Warrants measurement input"
       }
      }
     },
     "localname": "WarrantsAndRightsOutstandingMeasurementInput",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "decimalItemType"
    },
    "us-gaap_WarrantsAndRightsOutstandingTerm": {
     "auth_ref": [
      "r711"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period between issuance and expiration of outstanding warrant and right embodying unconditional obligation requiring redemption by transferring asset at specified or determinable date or upon event certain to occur, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Expected term"
       }
      }
     },
     "localname": "WarrantsAndRightsOutstandingTerm",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfContingentConsiderationCommonStockAndWarrantsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_WarrantsNotSettleableInCashFairValueDisclosure": {
     "auth_ref": [
      "r127"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value portion of warrants not settleable in cash classified as equity.",
        "label": "Fair value of contingent warrants"
       }
      }
     },
     "localname": "WarrantsNotSettleableInCashFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfAssetsAndLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": {
     "auth_ref": [
      "r644"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.",
        "label": "Dilutive effect of stock options, warrants and RSUs"
       }
      }
     },
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r229",
      "r235"
     ],
     "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": "Shares used to compute diluted earnings per share",
        "verboseLabel": "Diluted"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails",
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r228",
      "r235"
     ],
     "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": "Weighted average shares, basic",
        "verboseLabel": "Basic"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/ScheduleOfBasicAndDilutedEarningsPerShareDetails",
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted average shares outstanding:"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://codiagnostics.com/role/StatementsOfOperationsAndComprehensiveIncomeLoss"
     ],
     "xbrltype": "stringItemType"
    }
   },
   "unitCount": 5
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "205",
   "URI": "https://asc.fasb.org/topic&trid=2122149",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.5-02(24))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "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(30)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(4)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "730",
   "URI": "https://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32559-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r11": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32632-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r112": {
   "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/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Subparagraph": "(a)-(d)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=6909625&loc=d3e227-128457",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123586518&loc=d3e961-128460",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "37",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123455525&loc=d3e2207-128464",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4845-128472",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r12": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=6911189&loc=d3e6408-128476",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126966197&loc=d3e6578-128477",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126966197&loc=d3e6613-128477",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "30",
   "Subparagraph": "b",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126966325&loc=d3e6819-128478",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=126975305&loc=d3e6927-128479",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "805",
   "URI": "https://asc.fasb.org/topic&trid=2303972",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c),(3)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r13": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=SL7498348-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19279-110258",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "940",
   "URI": "https://asc.fasb.org/extlink&oid=126941158&loc=d3e41242-110953",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r138": {
   "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/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(2))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r14": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r140": {
   "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/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.17)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.4)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(15))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r144": {
   "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/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "320",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126980459&loc=d3e62652-112803",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126941378&loc=d3e61044-112788",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(10))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(15)(b)(2))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r149": {
   "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/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r15": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r150": {
   "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/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r151": {
   "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/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r152": {
   "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/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.(a),19)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.1(d))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r155": {
   "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/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(8))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "https://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=SL6953423-111524",
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5212-111524",
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a),20,24)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5093-111524",
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6904-107765",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19,20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r170": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r171": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r172": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(15))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(16))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r175": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(2))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(27)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r178": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r179": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r18": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r182": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r183": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r184": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r185": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e637-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r19": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL116659661-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(21))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(24))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r199": {
   "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/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.5-02(25))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r20": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(5))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3367-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4297-108586",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18726-107790",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(e)(1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r207": {
   "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/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r208": {
   "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/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r209": {
   "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/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.25)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(4)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=SL124452830-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r22": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1448-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1505-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r23": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1252-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1278-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1337-109256",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e3842-109258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "https://asc.fasb.org/topic&trid=2144383",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "270",
   "URI": "https://asc.fasb.org/extlink&oid=126900757&loc=d3e543-108305",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=6373374&loc=d3e70434-108055",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=6373374&loc=d3e70478-108055",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e637-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9031-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e681-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9054-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e4975-111524",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5033-111524",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=84159169&loc=d3e10133-111534",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669686-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(4)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e557-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=116847112&loc=d3e4492-108314",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=116847112&loc=d3e4556-108314",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "https://asc.fasb.org/topic&trid=2126998",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=99380562&loc=d3e13777-109266",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124507222&loc=d3e1436-108581",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "440",
   "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "440",
   "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r298": {
   "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/extlink&oid=27011672&loc=d3e149879-122751",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r299": {
   "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/extlink&oid=27011672&loc=d3e149879-122751",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.5-02(26))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(10))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r300": {
   "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/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r301": {
   "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/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r302": {
   "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/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r303": {
   "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/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r304": {
   "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/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r305": {
   "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/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r306": {
   "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/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r307": {
   "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/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r308": {
   "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/extlink&oid=126975872&loc=SL124442552-122756",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r31": {
   "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/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496180-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(7)(c))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21475-112644",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130531-203044",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130532-203044",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r33": {
   "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/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130558-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130561-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130563-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130563-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130564-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r34": {
   "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/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130543-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130550-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "https://asc.fasb.org/topic&trid=49130388",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r35": {
   "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/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(03)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=SL116886442-113899",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4549-113899",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r36": {
   "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/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(v)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.D.2.Q6)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "https://asc.fasb.org/topic&trid=2228938",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=SL37586934-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e32247-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e32280-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31917-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32840-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32847-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r421": {
   "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/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r422": {
   "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/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r423": {
   "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/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r424": {
   "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/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.4)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21D",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=SL94080555-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "https://asc.fasb.org/topic&trid=2144680",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4946-128472",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4946-128472",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092918&loc=SL128093175-196984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092918&loc=SL128093175-196984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=128092918&loc=SL128093175-196984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126731327&loc=SL126733271-114008",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(b)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(b)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(4)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)(1)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)(2)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19279-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=SL6742756-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL120254526-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL120254526-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL122642865-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r469": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL122642865-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r470": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r471": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "832",
   "URI": "https://asc.fasb.org/extlink&oid=128342835&loc=SL128342857-244232",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "832",
   "URI": "https://asc.fasb.org/extlink&oid=128342835&loc=SL128342857-244232",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r479": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL77916155-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r480": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r481": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r482": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r483": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r484": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r485": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r486": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r488": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r489": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3044-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r490": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(2)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r491": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r492": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(4)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r493": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r494": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r495": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL122150809-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r496": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r497": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r498": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r499": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(01)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(23))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4273-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r500": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r501": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "855",
   "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r502": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "https://asc.fasb.org/topic&trid=2122774",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r503": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r504": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r505": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r506": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r507": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "https://asc.fasb.org/extlink&oid=126937589&loc=SL119991595-234733",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r508": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "912",
   "URI": "https://asc.fasb.org/extlink&oid=126938201&loc=d3e55415-109406",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r509": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "330",
   "Topic": "912",
   "URI": "https://asc.fasb.org/extlink&oid=6471895&loc=d3e55923-109411",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4297-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r510": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "https://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r511": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r512": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r513": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r514": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r515": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "340",
   "Topic": "928",
   "URI": "https://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r516": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r517": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(7))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r518": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(23))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r519": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(26))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=SL98516268-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r520": {
   "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/extlink&oid=120399700&loc=SL114874048-224260",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r521": {
   "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/extlink&oid=120399901&loc=d3e537907-122884",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r522": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r523": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r524": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r525": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(22))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r526": {
   "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/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r527": {
   "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/extlink&oid=120400993&loc=SL114874131-224263",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r528": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r529": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "https://asc.fasb.org/topic&trid=2122369",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r530": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r531": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r532": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r533": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r534": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r535": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r536": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r537": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iii)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r538": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iv)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r539": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r540": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r541": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r542": {
   "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/extlink&oid=120402547&loc=d3e617274-123014",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r543": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=126942805&loc=d3e3115-115594",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r544": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "440",
   "Subparagraph": "(a)",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r545": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Subparagraph": "(d)",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=d3e99779-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r546": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=d3e99893-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r547": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=SL120174063-112916",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r548": {
   "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/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r549": {
   "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/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r550": {
   "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/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r551": {
   "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/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r552": {
   "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/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r553": {
   "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/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r554": {
   "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/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r555": {
   "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/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r556": {
   "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/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r557": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(c)",
   "Topic": "976",
   "URI": "https://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r558": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "978",
   "URI": "https://asc.fasb.org/extlink&oid=126945304&loc=d3e27327-108691",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r559": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "1402",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r560": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "1405",
   "Subparagraph": "(1)",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r561": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "1405",
   "Subparagraph": "(3)",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r562": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(c)",
   "Publisher": "SEC",
   "Section": "1405",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r563": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r564": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r565": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r566": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r567": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6935-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r568": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r569": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r570": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r571": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(m)(1)(ii)(A))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r572": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e4984-109258",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r573": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r574": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r575": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=122137925&loc=d3e14258-109268",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r576": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r577": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r578": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r579": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r580": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r581": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r582": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r583": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r584": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r585": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r586": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r587": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r588": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r589": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r590": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r591": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r592": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "217",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126976462&loc=d3e36027-109320",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r593": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r594": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r595": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r596": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117819544-158441",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r597": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r598": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r599": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "https://asc.fasb.org/topic&trid=2134479",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r600": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-23",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r601": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r602": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "g",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r603": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12, 13, 15d",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r604": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13e",
   "Subsection": "4c",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r605": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "14d",
   "Subsection": "2b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r606": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "15",
   "Subsection": "d",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r607": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "14a",
   "Subsection": "12",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r608": {
   "Name": "Form 10-K",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "310",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r609": {
   "Name": "Form 10-Q",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "308",
   "Subsection": "a",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r610": {
   "Name": "Form 20-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "220",
   "Subsection": "f",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r611": {
   "Name": "Form 40-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "240",
   "Subsection": "f",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r612": {
   "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"
  },
  "r613": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r614": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r615": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "425",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r616": {
   "Name": "Securities Act",
   "Number": "7A",
   "Publisher": "SEC",
   "Section": "B",
   "Subsection": "2",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r617": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70229-108054",
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef"
  },
  "r618": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r619": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=SL6953423-111524",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r620": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r621": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r622": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r623": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r624": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r625": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r626": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r627": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(d))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r628": {
   "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/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r629": {
   "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/extlink&oid=120395691&loc=d3e23780-122690",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r630": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r631": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r632": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r633": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r634": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r635": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r636": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r637": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=SL124452830-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r638": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r639": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "https://asc.fasb.org/extlink&oid=124260329&loc=d3e26853-111562",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r640": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r641": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r642": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r643": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "55",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e2626-109256",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r644": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r645": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r646": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r647": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r648": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r649": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "320",
   "URI": "https://asc.fasb.org/topic&trid=2196928",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r650": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(4)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r651": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r652": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r653": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r654": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r655": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r656": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r657": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r658": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r659": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=109237563&loc=d3e33775-111570",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r660": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=SL108378252-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r661": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r662": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "410",
   "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13237-110859",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r663": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "https://asc.fasb.org/topic&trid=2127136",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r664": {
   "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/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r665": {
   "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/extlink&oid=126975872&loc=SL124442526-122756",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r666": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r667": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r668": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r669": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r670": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r671": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r672": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r673": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r674": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r675": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r676": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r677": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r678": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r679": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r680": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r681": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r682": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r683": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r684": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r685": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r686": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r687": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r688": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r689": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r690": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r691": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r692": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r693": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r694": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r695": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(v)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r696": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "740",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126970579&loc=d3e23163-113944",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r697": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r698": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r699": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r700": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r701": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r702": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32621-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r703": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r704": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r705": {
   "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/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r706": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.4)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r707": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "15",
   "SubTopic": "50",
   "Topic": "805",
   "URI": "https://asc.fasb.org/extlink&oid=6911878&loc=d3e8732-128492",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r708": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r709": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r710": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r711": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)(2)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r712": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r713": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r714": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r715": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(01)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r716": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r717": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r718": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r719": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r720": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r721": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r722": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r723": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r724": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r725": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r726": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "730",
   "Topic": "912",
   "URI": "https://asc.fasb.org/extlink&oid=6472174&loc=d3e58812-109433",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r727": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(7)(2))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r728": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "320",
   "Subparagraph": "(b)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126980459&loc=d3e62557-112803",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r729": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "((a)(1),(b))",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r730": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "350",
   "URI": "https://asc.fasb.org/topic&trid=2144416",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226317&loc=d3e202-110218",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=126905981&loc=d3e2420-110228",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r8": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.CC)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=27011434&loc=d3e125687-122742",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "https://asc.fasb.org/topic&trid=2155823",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "https://asc.fasb.org/topic&trid=2144648",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=6405813&loc=d3e23239-112655",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r9": {
   "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/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=6405834&loc=d3e23315-112656",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "50",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=6784392&loc=d3e188667-122775",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "https://asc.fasb.org/topic&trid=2208762",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5047-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5047-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  }
 },
 "version": "2.2"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>86
<FILENAME>0001493152-23-007925-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001493152-23-007925-xbrl.zip
M4$L#!!0    ( -.#<%;P=:'_.A$  /+!   1    8V]D>"TR,#(R,3(S,2YX
M<V3M76USVS82_GPW<_\!IR^7FZDLOS1)[<;MV):=ZFI''MMITOO2@4E(PH4B
M%("4I?[Z T"0! D2(F799B-FIAV96.QB]\'+8O'V[N?%U -S1!DF_G%G;V>W
M Y#O$!?[X^/.Q]ONR>W98- !/__TC[\#_N_=/[M=<(&1YQZ!/G&Z W]$?@0?
MX!0=@??(1Q0&A/X(?H->*+Z0"^PA"L[(=.:A /&$2-(1>+VS]]8!W6X%OK\A
MWR7TX\T@X3L)@AD[ZO4>'AYV?#*'#X1^83L.F59C>!O (&0)M]W%KOI7+?L5
M9DZ2^?#-U8R]7=S@SV/D_Q#VH?_ /D'\GZ_WUX=_OO[O#[^B+Y/YI]/%/9J^
M^65Y/NE?#'_]O'1_/WS[>7_P^^]7D<AWS)F@*00<#)\==X1^2KV'@QU"Q[W]
MW=V]WN>KRUM)UXD(CQ8>]K\4D>\='A[V9&I,:E N[JD7LS[HB>1[R%#"F:=B
M"SWV60!])T/O!DD&G?AU+TK,D.)"TC<1*8Y)792C8\C9&9-YCR=P^OW]F#!D
MW3&$LX1X!-F]9,IHT&7A3!)_/8C)^=="T@Q/D358SA KYBJ3,AG<@.8R9.S&
MDWLB6>39[>[N=??WXIQGP_[G))-H?'#L$Q9@1U9J*61O_X"3(P]-D1]<$#KM
MHQ$,/:['UQ!Z>(21VP$!I&,4B%K*9M!!55C&]1WZ/N'-@K=-]45\F\TPK_?\
MP]_>B0IR1(F'[K@*0/S@#=(B0%#TS@CO63H N\>=Z*=@Q1E+9BX:81]+B:KY
M[8&N:&RA4)'_E%G>]?+$&HN0(7?H_R1_SRAB/)]4X9)_4!D524DF!WI.Z-7+
MDQ:E,(OZ$)MJ?>.=0D^TL-L)0@&+C)C]9#?F/K>@Z.A08DV?$0^[_(L+%",0
M<6IM+,UP#2E7;H(X"?0*#)Y-MUO_H+KUP:L,XW]O+QJ)P=AP-)P)7X*+9">^
M*_P'BB;(9WB.!MP]F:)+PE2CJ)W+CMSW-N1268",0"H-0-\%&7D@$@A>"9$M
MIGXP')U-H#]&;.#?!L3Y,B&>RYW!\Z\A#I8Y).VT=OQ>5\)/P*=D .P#7<J_
M0"2GQ4RTJ#/()A<>>2AH;&F2'9$WU5N48 DDS^VU_I![/7.,'G@/=@H9YH:^
MUE2,8%A!8\?CK7"S^!S&(RRDB/\1<Y.]F.0GL- Y;B\:M^%T"NER.+K%8Y^[
MV0[T@Q/'(:$?\"GR-:_'#D9QXZA&:T?GASPZBJN 1.,+4L8@YKR]*(E^0_PG
M>NXY]$1WPIO&!?:YGX6A-^"S52JG%0JI&O1VM [S: FNWT7]F,;\.]FT$OY
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
M16@0#(^L?N>+&8Z*RIZ[YM<7W2"S;[;J::9XR190LQ@-@N.15?&"T!'"XK6
M9V\%]44WR.R;K7[*%"\["M0J1(.@>'1G'%6R%Q@%Z@G^BYC\\8JOJ/4O(+Q!
MIG_N:<[!BTZR#AH\R4J6[;0U2[&@':]47:L;/HIW/FR4Y4MOB%BKW-5[VZ=C
MWXR&O99^E3O-)^/>#..M/2:DGM!SA4[7D?BMA/>>WK.M)ZLY=EVG)L4;APQO
MYHX$T!OX8FV?86<SSE--84T]YG#F0<:2=P0*5J!L!'6KRX8'V.32Y>3F4W'Q
MLM@VZSO8P_'>>%[O?=Z#9W>,1%GZR T=W0/9+,O'C07BR. S6:ED)U%FCV8=
M$U7D]Y>Q3_P>X6 ZX[UE76L4YO[+Z!Z]USWP14\6=8Z>1QZB&ZMJU @;ET;8
MPKAY/',-[#+=S;.*K*'[E8V"?_2QN+%476"@7D0M5;.,NOG::@<D;H0+-!Q]
M9-&.P0)EK<1-W8XLWS,N4B$YI&DA:"B Z66@3#[;D=]';TE_OHG_NUYT1Q7_
M^7]02P,$%     @ TX-P5AC14>4%&   :#\! !4   !C;V1X+3(P,C(Q,C,Q
M7V-A;"YX;6SM76UOW#B2_G[ _0>=#SC, N,X=EYF)S.YA6/'.1\2M^&7F;U/
M"UG-=A.C%GLHR7;OKS^2>I=(JJB61 9W@]T9QU$5J^HA6<5BD?SU;R^;T'M"
M-,8D^GAP_.KU@8>B@"QQ]/CQX/[V\/3V[/+RP(L3/UKZ(8G0QX.('/SM/__U
M7SSVSZ__=GCH76 4+C]XYR0XO(Q6Y!?ORM^@#]X7%"'J)X3^XOWFARG_#;G
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
M[,]LEW&<\AL'&3C5I>2PN4Q!ZFAPJL%0,WMIS>/B?'5!Z W:IC18LW4C%%0
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
M4WN_2,$FORMF/D6D#US TJ?=&T243UVH4JEYW^7_XM>8L-_\+U!+ P04
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
M!8C\PIZ#D4)DID U(,#$:K#PTO9,95H7.IA? 3L$5Y[]Z/G<*@@,@@&AQ-6
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
MRMQ)6*HD-7?AY=+_"&NO3$UO<P(W.HJS&[ D=UQX?2CK<]=(#V3-[G@TF+Z
M5TO/2\!?4Z_>G.6ZC3KN(_%ZK7_6KM:=5X/NI+,D2JW8G4@D5^I[BJ5.XC=-
MT'NC*6F^8_2*:C$_/6WHU=?J5:MB(,M"5PREC[---2.PQH&VU;.%:M-[#"Y3
M7^.VOHD1E#Y?)LD^(\I7NFT/B9&ED'<_F3'29A_@.5PN84!3;AG9"HI<]A+5
MIG9@;F/Z!SK+C-T!Y8S%#PUQR0@L?+4E*18,HC1)\^GV$G!YS5DHZWQ_;).T
M<DXOLH3CH&Z#P4M:>?N:E[22LK6\H)B_4F!=2%K9F*%C51F%OC:S+AX!V0?*
M57W$53WOQBKU8R4=6;0GFL.3];4/"3R$/IGC@+,(O#]CT%=.#[_GX:;YU.C5
M0^8/N]>]2@:2&:X=Y >),#4^9:@P@]-#I ?<%S]<R:88=(!2B"24M()QF_0Z
M446!*AZ-GOBCT.!B?,P-+[8+D<F!P]9@-#0NN"TPO:9\BSR'_20'0]5M2DT1
M0HD/B0]9G1YMSY&,@Y"**!'RO@O0((1".EU!(WDPY-5@SH;&+%A4XM^ACY=G
MG]X(5ON0:LFG;TU'4%D;YNF3,4#>>>'W2P3 &*\9"(31G1TI3XML'KT_J=,6
MI *56+BV_ S/#KA^>5D!)P+N T#L=WH8RE=I\<H^4"!9NK#W@ATO>.<PC":S
M<WOE1;:OM.354$Y'@USUF)JP<UN,^;#(F22,@T83995V.AKJHL?2A0EAXS5/
M\L-*WB:1\$GJ1F0]\71D_/JEJ@P3GL9+ER0\]!RH(3JUM-/1QR&"P]&%B<W'
MCK&Y T\@B&7\^3J-&-1X)S-$?+C:L(^IM*U/68#K-'"3![4F<11&=N#2&SIE
MW=@KE0J7Z4G=6<Y @LT-@A+JMF$-$VU'8#P5B&?<;& 0RL-@J+.'<0&'^L>]
MZD+UF177\I-'"\Q_M&'4FLF8*U*['D,+\A9WX@S/HN5>?IA!U9GMF,$<(_*J
M;A%< 12ML?G(EF<E3*<ZX>449=QHVE#.3W?>4";5K8]7G:*BE<%0G9=E:'77
M>63**%W?4<3!F)P:>2B9U1WEK&5\A@M3C;.U.-E%BMB 8B"26$%UY8SS+MFJ
M2B1-2!'K27!104,21[.37KH&TN0TF$[!-C0U)I=4%,G8:J@I\47EJZH^7+XE
MOW&SZ!5Y(W<!?9=N&+(?QLL5@D_)76012K(<=&5:-,=/23/SLBYV0[-&34UQ
MJ18 9"AC7D;%9#;S'" ]0]8VGVH*437'B:T&"Z'&P:G]KP>HM@60JP/8[CL1
MASJ IIK32%?YQZ@#:%RQNFWIC)@;E(L ]OTFDV(10#/?5F(N(=]",(O]*V_&
M.225()Z.WAGFHHA.0Z65,BX*SY3\*X)ADQ-/2K='"!;T,6YW?NHX\3+V[8B4
M)%HAX'@TF(;_[0-JYL ME=1@Z<B&N:T>AC<@VM6\G]6QC>_^!G"& X]J>!"+
MM3$[UIQ5MN+&E]_PXLL9!PVO<FP7 <(VY^KQEJ?'AEE:*^=G"_/3'2?GE#RJ
M#$VEDE!7YL3*.5)*1\O%/(R)EZM RHR8R]K,^)@Y1Y&S];7];XAH(5[!N_8J
M3 PX0)-&3[K^&<M6!GF:'.DWLM_82V% 5IF1IF?L&Z EC3?/8B9%WG6!;N0Q
MHZZ!86B4?DQV/ X(PSL0 BP2>6;X@CPL#:4B4U+DNAZ[;_CEPF8:&C?7W\
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
MLOUQ$"$/S\1.5[>E%7H_#-'F5C,N#+VKZH5B"'V-46:7AX&I:"KCHNSY71.
MGCP'U*N?O^Y(-0WIMU;\^SD,HQL8_1^(-K?1.6=$776Y?Z.Q8U.9=PS<E;[)
M(H$=F?17I-U(PQ"ME>,P;MNP7]MG2:QL@*8V2T\LF[J;--S>1]][-!I[MAEK
M!#9]*XTQ L]].PSS9W)2\1B7+@@!L_V>(2W0DYFIH*T0>TG>";HC3S<5_$?V
M\B2BW"-@E31F0?Q!7]8"=+Z/PS &[D6,YXMY,H,DYRO)[_%:EJZ2W#0&%3[[
M!W\3_9GQ0",>.=L$FL<!_C-XL%]N$7SRPLVERUR%TEW+#[S'P#9<K82MA?E:
M.6,-#Z"=@0"SCD@!SUQ1$)X&[I?9#)!WV<@O[NP(A%RM/_*T3ONPR'@LZ V2
MJI!Y1]06M"L-=K@ ,X 0<+$,IV$((KZZGWCJ9JRH/@DS#0I]"U#NE6-!4@RX
M:KU_S5.KR)"JEK'L3;G" )6Z]_Q^M*U/:?#5W77N"YTK@*=8B;<%WW.+S%(N
M-:\']J7%M1VEA8 G 9G:[&!-1;KR[$?/IW_@*L<M*KMA;N&9,66?JESH0$=E
M7?*^YSB80;2D"VA:U_8!3E: #*1@3J7DJLY]&)-V8!5ZL++2N1&T\DY26_2O
M_P/"'<=H35=]KI;<ES$S-FF=X-[T($[)'5C%R%E@^^'%=X[LI=R$4GU(@3"S
M-MRLE!U[<DE]&O)?Y#4'_)O_!U!+ P04    " #3@W!6Q+C--LEY  "JCP<
M%0   &-O9'@M,C R,C$R,S%?;&%B+GAM;.R]>W/DMI(O^/]&['? >C;NVA&2
M[>Z>\_+,W!MJ/7HT5RUIU6I[9D_<<% D2L5C%ED'9.EQ/OT"X)O$DT4"6?*=
MF!EW=V4F,X%? HD$D/C7__&R2= 3)GF<I?_VS;OO?_P&X33,HCA]_+=OOGXY
M/OER>GGY#<J+((V")$OQOWV39M_\C__^?_X?B/[/O_Y?Q\?H(L9)]!,ZR\+C
MRW25_0NZ#C;X)_0)IY@$14;^!?T<)#OV+]E%G&""3K/--L$%IC^4'_X)_>'[
M=W\*T?&Q@=R?<1IEY.O=92-W713;_*<??GA^?OX^S9Z"YXS\EG\?9ALS@5^*
MH-CEC;0?7WZL_J=D_]<D3G_[B?V_AR#'B+97FO_TDL?_]@W[;O79YP_?9^3Q
MA_<__OCNA__\?/4E7.--<!RGK-U"_$W-Q:2(^-[]Y2]_^8'_6I..*%\>2%)_
MX\,/M3J-9/IKK*#O:)+'/^5<O:LL# K>[=K/("D%^]MQ37;,_NGXW?OC#^^^
M?\FC;^K&YRU(L@3?X17B9OY4O&XIE/*8(>&;ZM_6!*_$RB2$_,#X?TCQ8U#@
MB'WH+^Q#[_[(/O1/U3]?!0\X^08Q2HH/J5U_Z<FJF'YPK>PM)G$6G:?3M!YR
M>U*?^@XI]C"@R^_<A/NL")))RG<YG:M]C:>U>,OGOJ7I.(^GM72'<Q&UB['*
MULTK;M>$_>,5_5-/1?Q2T D,1[623(1B!.9?X!-#);N1GH4]N0D;S3,RMIW-
MC%SF*L@?N.!=?OP8!%OZ@??O?\!)D=?_<LS^A3="]0^_LKD1;W!:G"9!GM^L
MOA19^-O)2YS7W^%&_MLW!O0_# U@G">DMB(@H:8I*HH?PHQ.9-OB."D;O61?
MD6QCI$;59ID!\:_)0R._;&2J@L20'AG!>;8C(;;JXZXUIJU::;A)* <+V'!Z
M_/7+-_^=DZ%LA3@A^BLC_5__^D,KV@N63K.4!II%_)#@6RH1$X(CKN!GO'G
M1&*[ELLEK@Q-Z*)+PP(&8V9ZCI#6<J&&K89=R>D?>(W[G/]]%Q>O;/E!%S)I
MD9L,9&(>+X.92GWA@"9B  ,X$RV'<"M)44L+96RS&-#\CV*F0Q?H\<IBD ([
M,%$<;[+49 X<T;F=]21J]N>Y 1$8I,@T&\]EC X:1NX)#O(=>=6C1$CI$B<*
M5;M($9"!P8I<MR%::DIH>#F)HIAE]8+D-HBCR_0TV,9%D"B1H^%QB2$C];MH
M4C* P96)ED.$M3R(,1W'*:K8 *$M#'>;7<(R-3?%&A,6F1&\QFD>/^'+-,PV
M6(T\<WZG*+0UJX=(4V8XZ+34>(34F]-+=%(4)'[8%0%;"Q89Q2RA$3H<J-[A
M(HA3')T')(W3QUR)2QFQ2Q"J%>XB3DP)!EY*]898JHE13;TP@G)2=-!#_]8B
MA_[EU\_!WS)RNLL+Z@-$E#"0$;E BEI!AA QA7=D*-4:Q>45S4QK_3"+7G@?
MOWM?;E/^T^G-V7_^VF@B'!?$)"[Z6*4<ZV'1[][[5Z&4K'>7]G.[1'5(IR["
M=\?OXORWCZ_W]'.*;*&2PW&"6J?Z(#DM(_>.(7,=!4GIE@,Q%L0XH.0*:\2/
M#%/G@'1<3F%F9D(/:FH6.' STE,Z1PFP!WE<^XC3<+T)B&I/5\_F>803&J$9
MYGH\<,!GIJC!@->P01GUZ!HSVZ5%?H=#'#^Q1:(N,2 A=YP'4"H]6/8+:<&
M2Z/@:%%?D:.6?K:A3!*#WZ2X'DCE4;B R%D<+E6PB<1'%-Z[7ZG6L-,I'6K7
M6U FKB]!@BELGW"ZP]>X4 X<$EJG&_8J=7L;]2)"[X QT6Z<M>%DW6EGV:'B
M_CEK5H[WV2-F:4OYF*&B=C9XZ%5N1A$YJ7=TF.DWVBU[SE"[TJ]9E@;)!;78
M(*\C)',&"X62#1X$-#" (%=LB !&B>9/]NBR>?JQP?_ 8#HJ@!X2[,:#!<>"
M&7;0_T:U8R?3\HN,7./G*A*.T\=;DJ7TCR$_MZ8Z/F@IP^T.^P3S^CON%@*\
M@W,?K25+(LK"+HVE44"B''W=1D$!)KG8JMAH6"KX_L=W?_SQO<F:6\?K80%N
M9HY@-:YFA -."VUM0,G8CW]\#V=L/0WR]4D:L?^PL[Q/=(FA'DA5#$[3CEK%
M>PE'*348R&E5'$W9E!)1?"'^APX/E*&/Z:7>0ND0N,:.8F.D^144-M3A&X,
MF$'E<Y;BU\\!^0T7%[LT4I_LD1&[!(1:X2XXQ)1@@*)4;P@:3HQ*:L3)X4#H
M(H@)O___\;7YX[_'F-!V7;]>X2<*!?D<9<KL$F)V!G4A9\8)!H)6ZHZ2$I2C
MK/N &AX^QUV?_ QE6FNLNDRWNR+G)KU3#G%*#B\@E*LN1-Z8'![<I#K*,7:$
M2J8CQ-G0.SCCW]<OS<T''.Y(7,18/8VJ&%Q"3*]X%V%R:C  TZHXQ-?7+ZB]
MB]*PP(&6R&/4>0@EA^_Q2Y%S4)"#@9=>1_/Q"U!>X>,NCU.<YR<A79?F_-J,
M(F"34KL$ET;E+K DI&! I=9O"*B:&G7(ESW;?1(]L>)7T6G9*_1[^64:GJ31
M912LL\_4O'"7!(3^FWR;R%Z&L_VCJ>8U&TNV KP#;Q^MQ]?L2C&H(X>-=.'W
M?"7 A:%&6O6+USLIK+I<M$OPS:JLA_ 9%^LLNDR?<+G!,?Y7C%FI.\GME?W$
MN;KG,H?1]8V8?61YQ_Y,!@S=H&4^XG41%QZ13R^9HYY]OE&,N",:=R.J1+UV
MQ!P0>$>%2JO1B,=N:[*AC1+Z'<GNJ%JR8:GSFZLQ9J1./6 T/WCO9Y$VP_YE
ME77BO(C#($&?^<J0[VPOFM#27:.,TWBSVPB=7?"[L\N3(K6:>Y/='T%TO$BC
M49:]I/%]:_9%W=W]W]W=E16HU5Z3?8'6W0*-1MU=TG@>QFGD4!7SD@WF0PIG
M0[I8M69@[_\,HMO%.@E.7,>L=C8K\WA+XHR@LJ*NSU'^2XC3@"IQ2ZARV2Y/
M7N_P-B,%CJ0C@9[%W0+#3/EV$:&F!X$E0R4%%=,J<E33PQEAFH-\4E IJ7V,
M/!*51:/0@!0$BO3ZF8Y.1Z@5 "=[W-E#[L3+%P3_?8?3\-5LZU_.Z6G?7V>*
M9--?QN8=B?:ZCH*ESF*HH0>WS]_1DMW5W!$2IX]F&V9*5B\P-#!&B$,%'SP@
MZI55;:HU'  'Q,XNX0?K/=L/7I$G5UVW9_L!*LZD.IKOV7Z  [*.UW =-35V
MY.1.CVYJE.X=WI30@@&61D'5],GI0975&1KS91T03&//4%UH0L_F$UXR(U0P
M&_* A9M$42WLCA#G1)QUZ9ND(Z4+$O^FP)4ID[.]+&,#FLTM+8=W1%FIJ1_&
M2LZ9\33[@,;5^SE+@B).^.ZNQ:@FX?4YM"G-48UO0D;OD)RBK<%(5V*RY8<+
M3U9VBBZJ:9!:8-JHQ5U0V,V\*@$^@:HW3(56.3=8R&I5-L M+T+&A*!:"KKC
MUZ2APO?\98O#\L$Y\;ZE#:-/N,H-4<%TS 46GE)5#6!9\R+&[#IT/,WRXF:E
M>I#!G,U;^*@P0AI "GB\H\M247T0R7C9=@>X-QJ&1I[%.:\88#U!BQA]CG1R
M0U0CW9C+.Q:M5348Z6K>>:==PY&N/'^J6:M8<7H;[]2F2(<\,9MWI-GKJA_X
MJD?Y%EBC&*+M),]Q,05L$D9O6%,:(H6:D LFTE2JZH'&N3WBK"IR.05I4E9O
M6-,8(T6;A \FWM3*ZA%7ES6%F'^Y)=D6D^+UEMI0G*01&X:W3'?M:Q5&G&X?
M)#4VI?\^J9;-.RSM=1VB\BI+'X^OXB>V:*7_SI]:+D="(!MOC2G*Q<2(RB7
M)"IVP30@ 0,<L5ZBAY&WL [57='1%*^S),HIW)N_7&ZV)'LJC\HH\6+.[A)(
MMD9U$6;*"P9ZE@J/!JZ&G5^D;?Z*NA( XM4>HF!0:0G$0\">/=R XNMFM8I#
M;#992FA=8DJI;A=-0D(P.%)I-WK\@M,B@'/I19S&!>9!X&5:5%$@#P+SCZ_E
M0XI)D*OJJ%I)<'I>T]ZTWOE-<W8PF+37>72^DTNH5@6MC')=D*,'5F:1BD%<
M#I1UPF5*%T$ASO,[G&/:]*S\[!D[E)KI!T1#7I? M3*G"UDC1C!@M=%V7%,"
M5<RHYN:A8(<?SAA[G;&'KK>XP">/!!N$?RH&ET#4*]Y%GYP:#.2T*@YQUC*@
MEL-SC9[ZPMPGG#V28+MFU1AD!7CDM,XNO^K4;6Z]R@B]H\=$NR%PNF1+3),Y
M#K]_S)Y^X#NQY+4$3/67%B_5/_Q*->J;U/W!!1+&BK!N;__5>Q^/5!D5P[R^
MO#\_0U_N3^[/ORRT+<1NP]ZL?LE((K[6+B-RMM4C5;#9U!E1>.]9I5KCV\7E
M41M."2>":$<3NZ>=#?A<QA/&9G3#"BV3=X39:BJ?*T _\OQ+0$B@64T-:%R"
M2ZA>%T@] C"@$6DU!$A% P<*)VD11W&R*^(GW%:&/G\)DUV$HPO:+Z<T:MX5
M',8WJ_. I''ZF-]BPN]7?7P5"U ]>[;D%YV^.[5\T_5>JUKN<V!<:'D;1W4.
M.PR]TN@P\F$LBB$Q.XW^I<C"W[ZF<9'???FJ'+DU/"Y=Q$C]+LB5#&!@:J*E
M*!XM>1!G0IP+?4OY\N_@S ?GFVV2O6+,=;SAE8[51S;D]$X/;^C4[AWCD!&#
M 9A.PU$U3S;Z'7\,<HJNV^"5)TU/6*3QR#,=1ZB4 0=F[(B3I-RTF,3I43.!
M<KTS99W?P4!&H-2H8AO]FX.ZS??/V?TZV^5!&EW$JP+CE!U/8Y>I+OF2B,ZT
M3!-Y7L12@,O'V>T-Z[[7;L[M'5:351Z"[OV/[_Z &%MYG:YA1!R-8 :DD^>
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
MADIUT5+_!@88 X6&&*A_]M[3EVE!]8II6%5.O71P/'\)DQT[,ZM!@1FKV^R
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
MY'NJ)E+S.8>DB1DC1*J8W #R+R4@4_S(W@'6;@ :*#RN/EZSY.Q66-A!J7<
MFEQFE32'&2N4RV%3[DUV^<",CA;*FM\M-KVR"/&PP </&\'GJ7ZD$&LYX:@
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
M]Y2,QASY:S$21C"3CXVVNC=?>,0S?/8%S+:AV+XKS=:AELMI^&-F0B\"4K.
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
M2HU=@32'/\-6,7X$U(L/-/E725@[^!T6>L3*C<Z5-[E@GV'H38IK121-/:*
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
M(;5Y:2=_DY?M)?D#CVC)*U]02P,$%     @ TX-P5O8ZZ:3Q30  S70% !4
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
MZ)DWVQ&I.QZ%FB]YH,K8P;8ZD&@ CDM$PI<Z927L %W]$.?L(E?KHVZ%DU;
M#N/5)U&.K6V&Z11D4K59U5Q\"GOP) N=KY7R;@+OE3:%L>-V=6!((;PK,;YW
M:80GL\*/,8YR?XO&X_;FDY/O52<GNT^,XMEH]Y$14]71WF=&^7=&?^%?0CI3
MR;NP[;/^&$5: >OZX9E$&;EF:MST<F8;/(9[,;+_G2JOF5HUAGRFHB&P=C?1
M&B[TN?6"#>;)K)! M0#N%<,^,3'CIU%&=.0_4C9!W=%XIKK,VRN$?>IAAGJ#
M? .^#=KZYQ=14 %)$Q15L,]!S)C4RHX^EAY(&/()-IKF$=!W?55<72CJ8!]Q
MZ!&/P;(X0M%'$C&90M;%L^DRB (N#T]+KN5)6Q'[6,.4+" 2Z(S=,QC9YWGR
MATNV=H:QB'.JY4M3#?MLPY0M$ KH7%T2AB/;50H4F6(M>0++/V5)KHI:RDK8
MAQJF/ $00&=I$VQSO%QY >5Z5-X.RV/ 5LMC'V<8SWA*N=%IJ8EC8-/AQR$W
M)4,J[3%8Y_5#)@6'Y<+HT<=;FN0-IVK#I?$VCN)]P38Y)[2;+4!5]/CE9A2#
MP4"?/\=12AB6:=Y+X6BM.NIL*(P>XAP.=BVTMDQT=%H^>D'$)X9)=!DDJ^*V
M83++P]V^4U@=FGKH0<_;D@4#Q%+P&?[Q273/1CZ_SBDN@YHB $A>Z_)&#-M
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
M$NF80>?*T"U"=1610R7#]?OJ<"UJC;;5L%[(\0UXLHDXYH4 LU-9"2F_'B"
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
M[,7V36*?Y-I6G780NZ0DS8D >IYR.LXLUAXBHLPLQA,(=CH%E2E;B_!93JJ
M;+X>2W:%TCL.ID9QQ'5P,MMVM+A).2<1F05IBT<QYHT.+C=##Q Z-&E?S6:$
M3R)D*\ ]FZYX^)C(#\)@M_\T.VQHT2JV:=A%$]JCZ) J7!9A#5COFYPZS;7
ML$%L Z^+ K3"SB'N/W/77!XQZD\A0S%[)?=Q&%['5"1K,J;?O$UL&ZZ+!K1%
MT!4C39'*1&6TU=\^JY+Y8+]S?D59?6X(VRSP70=TX$HK8+]7[B%/CP8,](GX
MAK!%@TQ6A,?&B.:BN]LKQ$]>R@.5@W?0K1K#MK[Z8;DUBETU@$VJ+X+6=^\_
MO!/47DPN_ZNTP.[W2DLEKPVMC&TW=:+.1%"W%LSF[%FJM;(60D"60PO['OV0
MR;2T(^>1BM=D:W% :CAPE'6QK[B5>;$,Y'!L6(!R_5R2U O"Y)8?;_-]<_.
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
MA'SLS3GGWKUW5V^D2^U*;1X4I,MN2^:?P/^1-$53NTVI''SRJ^759:D]D&_
M6+M1NQ?"E#BL#JH5EP$-SY '^F@!1F0&G5)PH@3&B.*IP ?RH<-PW Q2$SMU
M4!&:A\[$<QM2>;ASR[^:;H# F,B(RPVZ;'UB0A@CL^US-IIRJY4&8.B>B=#&
M)D=!L6DQH2GU!GUM\_'B%,ZP_5#_&X#EO1[^B0*\W%*[V;VW\ 2S@T*M>E*5
MRFTNI6^^N7>BF\1TY#!$(V86.BPKE%3L<3>1*1C/)QXV,*08>=F@%KHJ'BY_
MFF+?YQ[#TX>(0U%5QMI!8= #X^OV6)&5UDCICN.,S)@I9]J?'2+*&)H.X99U
MKW104!S]!!PQ"X%#V[B=DT:'S%SH/!S2Y=$QL* '_,M38MMD@1T3&)@BG0'H
M&  [JP-O8UK7,ZK=[P-#:[75+NAT574\;'64_N<+H2(LCX<M60Z/7RS  AO,
M\F^M%!M@0JB!J*AS%T#7XX#";\)R*2%IHY<_X Y1'@+0#@4+E!56:Q-)DU]N
M<@4S]-'$AOH/4#TYXR,]8F,CCFRUKB\/ 9$^G*&M9*7)KZ'H0L/@<V#-<<GN
M;=8#6T0Z S_\^A="[3]B[65^VPN_+W.*/0/K#!,G8,77"CU"9] _\PX<F!DB
M:8_$(:*^76BB=1P.%@ZBGH7=S+J/_QHEJI3$6\I?X\JX8+UJ7N5RI@169%Z.
M_,\MJ1%S'[F,5R9>B4Q*YH[A+\,)Y0J;DZ-:Y;14^_BI5#L[.WY5OELM]\]/
MBWN?K'*_!51BXOM2@-?? 494U%8L:L6$!M[CMFK_,N\%=@SA<<V@%;782=<U
M?0&;Y/3^?+A&CKI:J20Y5HMO49>^69BA?/']MC,@/1*F"6L.*YL;@O0@S;<N
M<:</Q8 6 5?$1OK<AK04W7XEH2&6IH0<C_>S[.V$PDI/1D[)#B/?5J0HK244
M5IHD3!/6'%:"$NZ[1)IO*^).'RWC#CHZ,D"'\ _7[S+Q\KW%N\(:V7\Z$BI@
M0F&E)ROG6XNP;I277:[-C/?R<GH?1!'T,+*-.AA"$S6X@=LYXA6"#VR 05 G
MZD"%'@.B&/I,5KZ&J':XG?O<=KK:VKM=;9S88Q?Q9M?P;E?QZAG/M@/OM T_
M8;U1_W>K.O?.MNB^)_P1ZW#<,/VH7Q@E881(9:Y%*,N&F&5?S4"QS2!ZVNX6
MH(XLL/;?_UWV7]4*WMWR7_'Z!5!+ P04    " #3@W!6$_E0Z@(#  ! #0
M"@   &5X,C,M,2YH=&W=5TMSVC 0OC/#?]@RTYPP+P>:@,,,8!,\=8 !IVV.
MPLB@QI9<632EO[XKC$G2Q[2')&WQP;)6N]_NMY)W5M;(O_*ZQ8(U<GHVCJ ?
MRW=]S^E:U6S$U>I^V>I/[!N8^S>><U$*!5=MJ-<2!3Z+:0IC>@<S$1->S@1E
MF%/)PA(:HNDTMXN)7#'>AEJI>\(7:=*QJM/O5/X4N@,9F*%$@H").@@60BD1
M[V6*?E$&B=@*O4JV6JM2UQI.QOY#=T9(8A9MV[]SN---V5>:Q8=(_:[S8>3V
M7;]8:)B5NE7M8^HT?/=%B064*RJ?DEF^.R_#92^+:(BHM>?FAKLVF(SGSAAW
M;3($=VP[4P=?"#]S+MVY[\P<&Z;7?<\=0&\PF%R/?7=\"4-W=J5W^)AS\^]P
M^[A)%0NW3TGN/2T6 L%3S!HH 6I-@?% R$1(HIC@L-B"I"&5E =Z"69TQ5*U
M7YPKHFB,MNA25, T3:/1:)V932!\F4U/SUO-.J#N4,@8YH9YOV2^:9V=WD];
MYV:S5BSL]<Y A# 0ALW(B@OD'2 +EP<5+1<;B5%AC J6&,$2KH@,UE!OE:%1
M:YAE7(PP0K[2G+0RV2P9!HFFFJ$F+"*6F8:,$QXP$D%Z8%,LW*T9 I(DH41J
MVFK-4NAQOD&]6>8YYU2O&6]_&6PHY,[E%G%2H'R)'FT:T'A!)9CU7;R-70[P
MHUXYTE-VU+]0-:T6"R.RY8S""8F3#IZ$."%\>Z1\YR12Q8)';BD,F-J6X5J1
M]9%RW=658B$O+'^'Y;/_B<CDE6' D-%HV88I6=$. GS:Z)J/AAV8)+K<IVWP
M2*K ,/:ML66[[QZWL0<:+4UC(>22RH.L'Y'@%NJ5)F9I5W^1F-_K>PX,',^;
M]FP;6XJ+4JVTF\^GO4$^W_O8XP4BBDB28FCY5P?NV%*M-<G:ZY^U-_XLQ_A,
M)99G$N6'!C?B\2G22=<6=F[Q /H^?[ZM+P0S_=(,<,1<Y&EYD,RJSF:6L?_R
MO%CWO=T/?;R^">D;4'8ETC>G;U!+ P04    " #3@W!6Y*C(0' (   _20
M"@   &5X,S$M,2YH=&WM7&U/X[@6_H[$?_!%VA%(+6UA6.E"MU)IRU(M"PC*
MU<Q'-W%:+TG<L1,ZW5]_GV,G?6<&=F"VA?*!DL0^?H[M\YR7F%;/.W]>U+:W
MJN>M>A.?C'ZJG7;GHE6KEMPGGI:RQ]73J^9G=MOY?-'Z;2=0<7+,*N5!PCHR
M$H9=BB&[41&/"^Y&@=T*+8,==$37Z[Q?Q'5/QL>LO%/[$'?-X*1:NIYK\E31
M)\P)*R9J (&#9'RCJY)$1;/W0A% :OF$)>)K4N2A[ &%EKU^LE.KGEU==J:'
M+P8\DN'H^'L ;%LC_Q8.+R2=UEJ?SMNG[<[VUF%EOU(MG6(J27SM7U74$W$B
M]$MJFJ_>6]0-J]AHW73:9^U&O=.^NMS>NKZ[N;VK0WSGBMVV&G23'98/V-49
MZYRWV&W]YK1^V;IE5Y\N6I]9O=&A)P?E\L';W0"8I/IE<WOKYNZBQ2J']6+E
M8SX=K4^-\_KE[ZU\(BK_/?SX=B?BC5M"]6[6&*JEN]IF,5]?M[]2D\A@])+*
MM0O;6\TA^3S6ZE%[3V@:@R5]GARO@M(_:T$[]5.P5J-U<7%[76^T+W__;:>\
M8Z^OZ\UF?OUL_8?23_K4M/S+C@VHJIV;YTMYH%7Q>)A/"J9S)PO/JIWF/T95
MWC\XDO&K;[+*_GBR.\T?@?W:QL#Z_$$P+1ZD& H?-B -XW&<\M"!UF*@=,)4
MS,Z4CM"K^ =3 6NH8E/R7JR R(/\=NSMGTRKC%\WJ[/XKSR+<^:UTBN^B/5=
M+=7!FACF*3<P1YA=-&+WL1J&PN^)@L-KC30S3%]!;*P2YD$"ES&,=\32.-&I
M8";AB8C@3,AB.5P.O(KD(0NXAUN:J4@F6"_7;J%!+#QA#-<C:A+Q>X%QIV0:
MAR7BOB@PC!M:CXJ!J)4GM9=&:!M#!N#X0K-A7WI]9E+Z-1;"AD*+3 AI$4D3
M"N[+N ?"3OK0T@R$9U&2W 'P*1^Z8M=A>KHC.Q?33/5^=_:&A-9FJ0[?! D)
M%L@8%DZ,,;'H A@(??!83SV7<8#P@2<2PF3LA:D/P6"-*2HK@':D#D=L *,G
MTB(R"\,)*V5<8&:'=FC ?KXDZ05JEH9H!2I2X L[IK&@/&[Z+ C5T.0\I45/
MFD1SC,;II@,/J(4INC$YH@7([W<';\AF;9;JXYJ036?&'C]H\R55)YEO=W22
M)>H4'*@@D+C<-7O68MN,:V$) K8NNZ$@&V8"K-0-I>E3#VH6(4"B((FN?6F\
M4)D4_2ATTBIT)#'0RA,^;ANV"T[P!9A&^ X&K+_UU>OSN"=8'5')31JB6>60
M%RM'N\)!J1SY[LI=2DKE8[!7-@BCT&6*&!V1$*"IT1X?R.'X$/N@LA.,M1N,
M1YV]NV=G8)[CT)+RO>/EQE"R!8':VRGU;,H>/[GL\:)NX>="YWOK09--82 :
M'&$SJ0F+C>.@9516H'3/XZE9[/<H^R'EZ@HP4C:<2^)4JB$ <=&#-#;:0BL1
M6SE4/AT':SE?3J(^+4)N>2Y+Y2:T5,@B0GHH$;@!D%&A]'EBT7:-]"77DK1
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
MX2.GH+^D;0N7^ ;^"0]> B+YTF*6<!_>H- X][T^4A'RO%H]].C?]0;)+!=
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
MK'XZXJ=8XW/!+93G%X;X"[%.)P9.+2_BS]LZG9A;M=1H_\09U1/ 'A;:*:U
M;L]@S1/E#PMG;[.!_^/0%X;JA\MGK4]'=8+ZV1W ZMDA/,N#Z@JL>>KSN\=S
M1/5BN;LZC;EI\[O'JX3RCVGS,P%\L)1HOR!/S<0TH^5%_1_6Z&<XCHE)1TN-
M_H_I]#,!7*@K?JFT^IG +YS=+:E>/]-AS,VMA0UZ+%.G\4S@QD/-;:<WP*)4
M[O1KL!E%?O+7WE[Q'653=?6<\@7_T)\I@##ISH>+;+IVT[+\R'0"^J^P9ZS$
M'X=CO\"J@:EP/)(S^*3]%ICW3(0UL=F'^HH^LK<">['G[^VK*SN>WU<=^Y^1
M ;A?=#.._%X08XU<G[3#.;1PR-_DM/D!3]OM7-G ^&Z?DD^Y/X><X@F$1/'
MDD@W3'O2%@^+[^3TW"U.N^ YS-Z>*W\LL&7\U/TF/9B](#@Q?7\$7 F5C:"%
M'5ZP:0P(YR=E^,^CIS$VQ-0M;F#OGX0K.A)/V\+^B@)/.W(0#%0,0.OS?-8+
MX=EK[^%F>H_X>0[FT)AU.C3 LW#+PC4=ZM+#"L%3L.9@#I6]G[&?O)C2KENW
M,CR-Q'\ XV][OG@2YSB8PUB:IVSXW(N>Q(P/YE&N]93]@G1[VGZ+;T$UZWZ;
MG5#XS]KT\XK$\,.>M&U!?R,,/C(\ 9(BX"<<Z7Y_%U@]T3?AU<8]_0TH"ZM8
MGGU?Q2W5&[OU[?L R(Z_#D<#@#V0_8$#0.PD2V5?SLL%@$YZ-7@,H9'O%. $
MY ,VE_I1_#-LY16.XD_CSZ5J\B5\@T"!W?7"</!N9V<X'&X'PMKN>G<[)Q?_
MVOI8J]7J!\>-O?K^AYWQ'R?+[>2NIU8;$">=W$40FCX9EQ\3</2;DN\F?B9
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
M) 0=Y=4 [Z5$Q9E1<>KIE6B8GQ!9.TJIM+=#[[;G18'IVN>R$PKA?O;<+L[
MN"#=! X>*RK6 Q\1DDNSG^YV]R3X7S +0%W;?+( \CMEEJBQ*JCQ(@DBC"0I
MKKLFF4/-H>G;8STQ)Z$LA<N3/"<EFI26V51!4R+'>LF,_.[*Y2VO5^KHE *K
M]?:M9&]\*;TA+ZX9SH0)C</&;NWH<+]6HD2I/#Z&2:6#OT28&41/B2:O3=1H
M3U5/^O8UH*44NGOJ%"&TVKB!X?9;&3KBJG/AVO).VE$FU#YY#L6&MV>3=27+
M>H:#I$3A$H57PWE3*PV^Y=+N4U*X]J+%Z24F+).=M[0,I$2;)4.;%R\V?S01
MAKQ%QX=']35%AS*'I2 1M+ZI5*N$.,LG>AYE/72 Z&2!@Z=TM/5);9F".@]
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
MH/;\V;-,Y[KGN0^&&<_V?^Z&!S];K4X1'IGQ-;<^[NT>5>NUW>DNF'7C&DE
MYW__<=2H'[X'!A(*1PSP5 R7H\/ 3)P(0QN&";=<<HYYU*K]"3:X[(R*!"Z9
MBK.YX=,]"U_8QB#R@P@C>*$'/V5G5KWQIOT6 WR8W-&TPG=K>B0O%=*+:_TL
MSW',00 ;TO]Z=K1OSH&]<0<QOW3!SGQJ!ZA<DAU#F%;/L-"Y4V#0)<<1GHJZ
M+(&'9X&7VEC,I?HF$A4#VAKUVY[S)GA;7NE<KG1O(5>*^2%9,A7W5L]TNV!W
MN,:P)^&31 2M8"1K;DG!.CRIA/6HWF@3T\O7?[_>_GW]:\_IAOO/+X%(]-_Q
M-3D_$"Z,6K@\I@._;L?YW+/$%9=D_IB/#?M7O_QZ'31/=CM%>/PR"W++W1(%
M%K+56U"ZQ]%@?XPOG"E^.CT+\K1^^L?W@S__7;^O%^9)1"X^Z43,V],6R(#
M-O^:YCX\,0<R-!T#*VI%F,_]YQ_ 6 IS8TV >YIYV<V8E\:EYXHU/9>UOG1L
MS&Y1=DQ[9%@] 7HK[."[(?EN_20_6 :&:0S!AJY^=[TAK"[, "[=AB^"2/@5
M3""V14>ZG#Z,K6R,O=J^QI($NQ!AMHW_B( /5E4CJ5,>XYI'F:#$[[#ZOW#Q
MEEK[@I:>XA(-_K;]_3_Z?_PZ*9/WGO_:J]O_WD3AX-?O;5E8N&/*!N;__DMO
MDKT_I"&D;NQ@72FB)'=-[JX7PB=_11+% '#_#A88^51$&.2+A5U,-..2P$0X
MS$KKV<3.WSPG<D/3IZHA?TI1=:,>?AK^\I___OJYN!#YV,+Y1%)2PSH -XT:
MACU!^:%C)/&F_M;H@91#.K -TW%B8DA325NH!^"=#Q"&UK610O S+)#=W+!!
M1KI=>F#@"TM0D*;>,*BM06"\@;> 2F\$D=4S@IZ'Q3FZ8#/LF>'XCH=F,$G!
M]&.U\[<5BA^_:3!D;3 ,X/OVGP*+A. ']"S\"K>A7H0UQ0'M@G9I!J%Q7#-L
M<Q1L3Q@]NQF25ET8N P9+=/0#*>U2_CUT\U?T<GWS_[)\],HQBD[?_VMC__!
MII?Y5HXB;E!OC;AJ>BU)H:3SA&J0$H (^C(,@6R$ \3@>RZZ))T1D<O "_ ;
M(&P)I*"3K87QNV@;@0Q%!>6IZ8XJAK@3_LBX0 >#:5':QJD9FJI6=XQK)$NF
MUDB+V;1*?2.ZD4,9!$:K>FN\P?L[?&\T=AO;L=(-(AQXS  +^(P\QK*YD>4L
MS^4JO/%XUS'3$,';299P/E;B%9\,'HRBT"F-$R[-O;T_?^[]Z]^-PEA"_OHE
M2RA90H[QZ\ 6A6%:%K $I'>;D!PM7S?W4U"@W6KN%T$?> FLXFM1M+EA>7V
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
MLM/@5YUJ8D4Z9ML(1@$8<G!27*TZ%-P5 $TODZM?U3U_.;W?W#@5&&5+RI3
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
MJ4I\.($;\3W'>'-R>O)VF0BK)*$GD-"Y:/M,0WM3:(A\BQIW>V:^K6(Y I-
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
M/IDUDDU-RXI\TQIIDT&)J#'QE H&FMQ3G;OH<9L_U0!'-R/!%&/JY\P!?C4
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
M/+"FWKW8[AR>$QW^1ARDT$V4 !1HIE/3=/1X.M!G-?>:0?^-3V$EI1K)O&.
M!76;65$>RV:DI=2 ZL^D9J&)M PFT$*^TH-_JWICL!@J954)$T3:QQIA ?C
M1;Z2$."4 2I]?1>:7H4BCJV3Y%QH1BU&J4 BI5>;MCH<%9\)Y0WLV_2BX(ZR
M,&3, ZJW!^H"5 2,?AWM;ZI?]%)B=S'5?O+E.5^+@S(R:I<=G-S_G/SOOWFQ
MV]][S^(Q1CQW=G(:M(BLUE3C>G+\!0 '7\,F$&2[66P$!48F@KNXQ*#?M'#P
M\QFU]A+-]._X(>R,Z7LR)%047%ALZVRQJIMK*H"EFQ^^18%T%.9,7OUR0MVZ
M ZLO1YCTA=MM8P)N_?CF!$-0PT-BTQ">^.;L;7+TY.FWS_YZ?'CT-=E=8#3C
M6K"VUP24;X-'=J89DC; YGC=_AZ7TP6RL.0[NO#P/?[A;&XCB".;(@D^+1(!
MMRS\CFZM5X^1FAC!:V)%9I;,DM8"O0"A,)8:#VJ)O<06)(%J O[RJD/P)0A7
M!7NL5J-T3,VS5-">=!ORDO&OUQ)-U<Y3ZK[@1YZJG\$Z@ON#R6.8[6!_[U>G
M5V0AEZF,%.G6P!QH.DEX7AN-3).VF[@:S-\*46[\)_S%_Y]?9"!4=:=_S!*8
M+7=6)SF@UGXHF/M[^!;\/LZS/.^<7GOY10?_6:ZQI1\6RV2E T<1(:?A88I-
M_.Y4 7[A\<(+HAT59VQ0=&B:H;737J$'^[KHDI,4_V=_[SL!'%[FL\?8 QPG
M<G;R_NSQ:?6/Q\?)\6/JGFAZQ//,Y!B_/$L>O21@9G(&>N82YH/Y#>Z-^'A>
M._=5O'C4=3R39KEI6.C]O=Y*H[N-20&*6VL#0"*(TFZ4VTXCR-8;$)R,'2KZ
MIQ>,TY=GIV]Y^'C,?U;DZ:L5+-PRE]X+;Z0/);GU/X%5-JW *,V*CK395N$@
MV?WNU(2L5:EQCU??Y\8_U6!PT3'T\^7?X0'68X6.%09_89$SKRXT+<$"CH=?
M46H"^N7773O@7E0]2\J.DO;PL"4B8<*A14P9PBGHG412,UIA.S@YL,)>+5=%
MM79NQ#;MZ.1.N$IA ],C\/I9<O3T&:$7F1Z%_$$X^?Q?3G<_D1I2]YN;=A0
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
MI3YOUX@TW?Y8TXH?&]&.!)K$D;6OVVCD9BC0/DCK-G9"8@Y>U>_"$6W.DV%
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
M2:T.1'SOS8D(IZ%K//&7';46<B 6AFM &@;'<ME0Q,,X1<@+3,A86]<4:OC
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
ML092'.VQ:;00$R6ALO##;;8T63(#E^_UX=7TINSFJP[#'UD96XK#Y>&A][/
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
M80$@V@%T!.C #$:,"<P-/B55;,T1*$O';-3EHXS_(?^O+*M.;%R&3W8B6H:
M1<&9\9<#!+^$5XKOYLI%IM](>ZU@N"("PQ?3?W4Y8\<;+HA ^.TY"###7NG7
MHQB/8GRKP8H"999CYUKJA5.7&C= .IUIFWEA,_4%YUT^0VD=16T4M8]ULKBB
M>96W*F>@Q+HI5VOCG8R%\T0:5>33==11)VZW)5$ [17&':)" 1:&NSR:@?LX
M3XIJ>A%U'R;XTV0=3 *+;!B%>Q3N6YJ\]G:G>.YE<.B:KJ:Z73)9-9F2^#X6
M0;YG;L*56\@>TZZ-,(^2.$KB;0.OW"]5F:I"<PC*!-C^LPS5VHRPLDUZTQ<]
MSA2D'G3K**&CA/X.78E]8(U+D_*XE?YRD:\HJ544V:3RF>)_5CE8H*A@T79-
M25X'4F%L8=!-G[?B5?FX&.MG#)EUZKM9MVV4YE&:/]:L/>?ZGL2!NUXM\ZG*
M<H7,)5.!Z0@4W]>6^A9ME2^RU+]Z!EE-ZMH:VU% 1P']6 %5IB8C?7'&845_
M&T5K%*V/%:W+K%!H(K*8D=<CF2=N'B2Q?B0P6JD#SG\>Q6T4MUL:CEFQ;@Q
MD(O'U&9$FFP$G<RRP 1F)+3W<2K5<"W&A<1GUT8[ D!10L%10$<!O=5@9P[]
M%HJG4YNS67S)SI,+9R" HUB-8G4[L<J;52<=: T+8J-JSY.4#U&Q$71TDXD_
M%9I[SBM2T<&DT >/DCE*YL<:@-EJ5<!&8U$S$C3IG=P5^'L!9?"]B_B.Z;3J
M2B*!6Z'\Y=IW@6,SLW4) YJ.<CC*X2W1&#:DA\1EPI^@57@<7N%XBI)<&G+E
MBGD4AJ5-F'T>.A_! YG<FQ+;&AD";T-_P; S2@![&G$)B%3^W^BGFBO5?BL5
M5KI$Z3VD[;0&_JC."<:%N/<&J0>+JI$>38C,869386ACSGCL>\-*<!LQAQ#$
M.<1B$G9-R! ;ZKL5#?-:"CL8SG8.NS=S&X%$I.AY1=59R,>/"4JEMV5&$<J2
MT^C$A:K@P!4:WEQ+VP/I>J!L?90N,H1R7=ET4RR+H9:YOC,3=N=A?L>9FR,(
M@ QI;FP@7'/4.DIQ*%\4]_<-S&_'(_/;W3*_'8_,;P.R?_<L6O>V#^G=3_4$
MK-[';7;A,+9$[0@O&=;L<5$+*N/N,2#_TF8+5*5Z'^0-MA$A4E!"6J?<>XTL
M(*0T9II6BF&1;:-WB_(FJZIF;EDD=[[%9312ENWPY)#]GHCN69:T8;DR<Q'#
MO)7-Q(BF& ;TPU,1J#.$R37)2<C=P[\9#[(AG9%P[N]M2N=DS97;1%8.;[JL
MZ)_2--!\L>&W$F* .;^9P#M\:-$$O78N*,\G>+,4CNF/WY3]9?ANC?;*+6:A
M1\PWY/3 V*H.AP[7L1.DC,45:I5B \8@:(%Y=@F#@%OD(#FA/J"^8R=QT].X
M,7(M'5??.V+!G_G))-?,Y4]B51L)U+YT K7/H*YW*$(AM7;_%OY_02S[Q(#0
M5TV*K 2?;^&F%TIA!1IG[FJJP6>FQM!L9,(/@H^$E&U24=NH>>!?ZQ-,9HG7
M[]()88RQ/8AA?6[C:!26>[(K.Z0#M24BJ;#+;(HQ*J5*$;Z130UFX?&ENRK
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
M),%T,KO,&ZSE@ OJ$U@\7Q\^3S6#$1<!C/;.O;1W;A(3#;'I]WR,+6LNM#"
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
M]E1[;W#)=>/C\+8M*P7+ ["T]PL<A4$J^^0!?\T_L:VSLID3+.%<0\L$J\*
MK8:U)ZYT<P8(,BB*,1!VSHNJD2IQ+M1:@/OJ<S#$X@ _T2XMPN>W3B9U=4&5
MD3,'"UTW@@"HW7G><.!_BI 4"O-*=Q6!*,FP$Q[UX#[D3?*/,_K7!_TVUHR:
MWEQ'WR8_9O-LC9CDY%V1)K]6U6P)[X5Q:,%G<G3T[/^R]Z7-:6/;HM]=Y?^@
ME]M]*JF2W4C,W>=T%<8X(?$40\8O+@'"* :)2.#IU[^UUMY;$B! # *!5??4
M;<<&:>\USZM8B)->3K@\O)S&LJ 65C$DDGHW+_>-).0#9JMH:#PK,*6]07W-
M:%%=)NU%:0E,NSME>)^X3UCRRBRV6GS\XR.BP^2%*[@^C@I:L.X%6UG%QWFA
M')Q<O,>_#ER6O$PHY4S=]!4V!1ANGIMRB2P%*-:N:VS#U.0.=(DVUV-"D\9
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
M;1 ,*'IQF]X#MP[8[TS]CE2Q\X[G;OCFMRY?_HZ3:_B*0!Q%.7#/0!D8$G5
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
M[)V5/8=]@L-7(!)\$]LC??0C.@:\&2_D<Q5&Z X(OFEP"+1TIPEV.Z/F*B!
M*C#4 *>43!,/>4.01""<678/N/7HDTS4#M^XM "5*@6:IK.3GTBY2@:URQI
MC4$7/LK)OS;L46\ '*#F.WO)._LU/SMG$MD/>\0%"P($7=9+SL/GK4>Z?!--
MC"8S> C$;H!AC!XHL\/,4"",-@Z4,7D-($.5^QJ61J>A,G@2-/M&\8#4@>:,
MU7W %P4(O%_#UAT#%A&Y((+U>4>)$IIE&OS7^)<3'/#6C9L7^.]?QK^)*;"9
M0]=MK:5C5'$B.\,%K"@\8?H$N<EHNJI+IHH@5%_F,QKFUB,R*XLYB@Z,GH:=
M]U@J T=V/T.>%$[+'+2'73<YQ"I,A%KT]W&T++@6.A3,K6)^4[<+/X+?92+K
MPID-I^/I)-+0+>^-LD\ N!EIQR]ZL.X*8>5F9UE WQ/Y^"?X= ^^QT5(D$W$
M&E#X:!D/GKP=641-^]ISC_UW,, I6<="]OK*E0$!CR W![J)83& ,I4<,4QX
MD,0Q6_S.+NX,G,VCHS<\-#F<</(!^:@:4XA!*!<?1:L%WPZG=OQ^&/C2*/;1
M%_3<_\:S'[*<4-"A$X8'FBB.PWK).L+W]_FY02?!>^M'+>O1=!U\@5)N)F+$
M<MAM\=HR%O70;!,(()'?&Y'?8\>=54&N)!7DZZT@5UY+!7G"@',,J/>\Q)6Y
MCE5OR$V).8:),;5!8ZK#BB/0I.D:#RQP.S%WB(4O6CJ8#J#C^ ='7&14FFZ@
MVAQ20A>>A!E6Q]6H/%4D(OC>0%2;><Z/AD.9 9:/ R4]]*()H@)Y9%Z2/V!#
MCN/ UG!T^5'7,'6^ ?)8$O3F!6M8P9[INU ;C"V#F6O\#1A0: PQ4>8,=*V%
M?\6<%S,LN^"GP2?)!>X^DV7HE7++>"'R[=HVB3F,XC]V=+#Y'EB=HNWO)1MQ
M_O%4(*W%+-,!HH>!KH<70Z."O0BK_BI/6J_/\YY45.A[_MA#<?R2_O>.$><&
M.>H__U?,Y8O_2.L[O(<ZUW=GL:[GD90K-FX+?N#U[/X"-C)K<3H ;;!^X#FP
M-L8HL*[#C3I@#&NCD%H?H% -/$L/%D[](O!8H\&IEMXD=N9#$WQMEK[Z7I&=
M$I)AI)UU2%EGJ6%9]ZR]86<A17TVP.TTRD8"5P/\NH[11Y!1L(S:9DTF;'>5
M<7RX!X?)DY,,^2*1V1@Z0!0(C08Z=4PC 3FPN1MN1)PRL:3#_L$_[RA(2):@
MW&]2Z,+/'290 @D&4!QP )O81P?Q8N'@[0$X[JW$N=S$H:MM$&2BH8I*ZE'T
M-)M#FU)!YK,;6\#VKZ,>&Z:.D7">+;!\^0<6D.D:]WK7Z(#YPJIQ\$\V!6[<
MMBTV1H8G9WC"X/#@D<(,HE;H&$/S;F,9>S2^'41MA^=0K+Z8N-@V;&? XQ_2
M;S!O0*H2?;E)#0LD,J:W42:#5</:^@=D/>E@;#@8HV>C*#$4SF+N\"!\(7N2
MV^+FZWYCT]SKXQ\=^X00ZTY0NYHOJ8/U#5ZC7%.S[6=6B<A#@-XX2G$6"C.%
M>*C^U-3U%L@C,+/$<]W(HG<QQPW7H3D,1J4PVO[Q+%WY\,#_!?$)U^(E66]X
M(PQX7PI:? ->_\4,4##[X+Q,Y(U:HB-S3#72'!,%G<P+\Z*F@>AATV?&AL\D
M8F73.0<B8D3QB=!^91H6S@S%Q&_>W*&_F-0<-M:'RUU.UCTK,,8$+A^]3M99
MDP?Z71O&P YAU.J\XPJCT:X'CFW"6*(#&I\7ZH]YYWS:FI =(SEUAQ68<?\8
MG&56&T$J@"N;ED_F363A?9=CRS:88O"^(9QJPV'08(8YRWR3%FJ(*#^[&ZOY
MY"8JZCR0,>S2MF8ZF./6W!L\,\W)"E6Q, X_HK'<<$,?/&*]!3?_J=L9MX!0
M2H9?H@?:;\A*^^A"LH0 !WE-"7M]0"J9H<SQ=((LH=N/0KMK] S6*"W[VIBU
M?M^V-%Y2JXD#B-^Z(UX9.#B0N37*_377AW-Q,4D2_L0+PHS7A/#2.E'GQ@B
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
MP$5/P2WL6GU,Z@4RW@\G]R5OWUR:)\UX*3MQ!V+"EG>+[5+03,A&SG]Y.0.
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
M:'E;T$>Q4/#3PF3+?"V0?,+6ILPIE ]3NA^^=O_EBZV^O_]ZT<@^Y-]( V.
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
MEPZ%1EL#YB>UD2=JA'9ZU9$] "NF3,-0X6\?A",V&AT>4(ZEZV;+:J-&F;)
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
MZ%X#'FN@5PT#S"A]O&3D3^F,R#X TX0NYDZQ)P/#R_NZ<-QGV4R<CT4F>&X
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
M3?[IEGO=:MQ\3#D)J_8RG.^>IR6O3MQ$Z#FL:3X1SV GP;$%@E/+FZ=#,>I
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
MG91 [PHU"Y2584A:;ZA,@Y#]NW&'#IA:7BR=@XBK"0B1XY@GSQR18^E0&$F
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
M .ES?]-D']*15%.7>Z!YMX&FB?A/P/8'(_L95TRVP<"Z]K!'YN_A<JZ1\XT
M,1O6"%;GA26ARKK'%E&&Z$3_!SQ\FSC]9;^;%7==L21(,F:;0I*"47F[H,X'
MF<X'\I!L5QCSETG4QSQ\+.L=L;\F5]G:PNROH-6TWNY#8US<U,3U:MC^2>TT
MZ?&>Z 9P 62/S$5KI4(218"E;AUI<F\)DY%.Q"'X>I/"=;?P<?V:3PVV!Y@(
M_Z-AB,;^FJ/L-RA$ ^;( S K4V&YXOAW+,D#.O*QV/2B\XG(Z4_-8:']Z2K0
MWONIHS6L N/E['NAU >]Y7=Z%U!^$AQ7C.V)3(1/IZ<7UV\0JB>7ANIAHNQY
MPM#2Y<L8$;<>95?/@%.)")_-3F\/$Q@K5Z]Q!].;;H4>]0\8JC?M9CF*IDLQ
MGA@1O)":>@\J#87^IN_3MUTC>LBJS_W+5*?S["8W^T)VCBG&-)(5$&Q;K/9$
M(Y% S4G#-8X&AA>$C;-K4V=2I3_:55:Z3+TT%L'7OU>*L&M56G0X]_\>'2\/
M:?]9-KZFEX2OH:8PUJXZA=;'PUE!6(A/!NP&F9TP_7$-7HWY/!E.9AW3TY:-
M-M[6DF.2[FCN%:U?S>FLE-'I#NPVL!FJJ]Y82?WY6SX]BSV0TSH9JQ8/@7QV
MD>UDK2T T(FUH)LHP#-\*I/@4P&:*JY*A*=7CMMKD^@YZ309?3[_N+^J;SE:
M;Y!O(II*\MFD7Q+7>O Y&0X^AXF7C5SY]D&(U6+%Y!;CY<HY:289X5.QZ5ZQ
M]3H=)K7IGU_/L5.?-VVLA#<OW\XO+ZE&F1B U:C"%A7L4+O%NM'O\X;Z>*%7
MC=< Q&I?4YCC*V8#\]9I3%$^G4CSV;1?UZZ=FLB26@'IK$WU^LB<G?:O2O?E
M\7[V;2::#=+'XG$^$=EY8DDOBUC"1/HKQ?C3NGSX+;\T=P[K5R\%,E$^GO:K
M&MS4L4CC$[PFCBMVYR1Q]6%D\;:6=#NXK(DXIXU3FKG7SO:$LCXSK^DS]>6B
M7JPZE.UT8ZZYY^7'7UJ8=+YP]Y_MB(;%DWP*YS&G0N(*&T%1B551U/H";>3S
MO5TOG9:JL6]$3!ND,HYOM;4K1+10"[B51O\NA5BY^/#UT,^1;T(,JQ8:*3Z6
MC@5*7%J]*CF#/]&C+&YNXOM^-QMC<WCPQ=N]+V@[TDV$X'XW:\ZEG!J_0,_"
MG-#Q$^.ID#IW6K/S/'/SMB4:\?YYKV<>/D^-DC P?W#^^&"X<-W"\$,T"QI#
M8GJ=R9*YP[2RJ4W!_[69C=WBIU2Z^7WY5*@'1_U@27&9:';>I+BEW/,4+UIX
M]QSF?:GYNV3Y,5VH":GM9U5;RH56I',&4PYRM1HK[]:<N>HAY*>'0T@F6+C
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
MR^=G- 491.7QL7("E H)=8[1E  4BA=E><E2<L,Y3=@T43G\FYUC>ZS84XE
M./==/_[NED&#X>"OCT*QK O\H6H'I$AFHL3*0%BO103158&L\\60:K B.6"#
M7NL2A,\Y/_,VN'6#7E:9T;)%WP=.IKP&Q OM?7;]TI8P!<R>PP2BJ<S)"L&3
M^(?ZB_O;QJFI2.Y,=[-\RW=<S9T?L'+C(@1YB6-0_A-I?#2026YWGO4;>/#X
M6/M6U8?42_:8!,7!CO4DQ):E*-EL!N4;7$5*,MZMW;OH&:3TZB_.@14S1\F*
MM?&$%^< 8/HW<2&:,1_U]?UY<I/FY^_@R-G0E0A;L: K5 SA/ZWJ[\^RS:+'
MW*AR,@--(U4"6F'L%;2U6<0S0) QTY21+3[$YK)\-3<_TR+0GV5HK+-N2!W6
M?&G(;^HMI%KR.<-_W;\F"T>21C+Q/5*N^![EWN*C^CZ[*]XNRGSQQR\LA!>8
M3I25F'\JRL>1; ZR C[9\[,Z'GZ#K,063PORZ4 /<W,8SF1U(D=?A"J-&  2
M=")$A S*PIL.L EL66$38"3R+,8,1>&R*?H3&>X!-2H]%$2X4@:^%[+))54>
M$Z<6%\1#@XU&1@6TF7+4@PC=ABZ0QI3!3^=GB*&HO]#3T(K2R9_+O(9_F?KY
M-X7>RV%\+]V!YF19Q1!H>E7^11]K(,YX (VT-8[@ ,U<@(L4!P..@7LAS@ST
MU%&4)W%^9MF^@!["@@G 8(?XCD.F /S;)=44J+(ZA&=C#B5!BW&D$H6TIHY,
MK+EX JZF1&O65D=/:8['.?(!2O(9NU+AR\E&ERF"M@/_2P^'$A@B0!F'I)X5
MGG#M/>=VS2WWJI3U95Z+T@V*C/6XNF8.%Y>,8+1&E M?'F_6G8G=D:C*D+;7
MW$ !0$#<@)C!V!WZHF[(I@K=*A@FLZ_YDF'(-@S*Z;$W$HPC!.0U"AILL<YJ
MC8HNCDBBT"8J6N:1!:+&=DY5&EFTGE:M<TR31 V\N95:9E:2H5[AUADMV]BS
ML$OV7/'10F'//)]\'6;OWV[OV2-ASZ5Q>;MCSWPBG4HF"B5W[J05>WCTSW+
MCF1SIC5)W/4_SXJ,$OS/65U8HB-R&<K5=-U$NZHC#N"F#^\MG@MW["S;9NKB
ML0RX<X0$E-4Q7 ;\E*S%B"A:(PC%JC@!Y'^TW0G/[P WMXKG5X"L/Z@.&\6K
M.[7A:Y0=$21*%Z2X8?<%F&1WT)!?IA5GW%)_#/Z7 4VA-?Y1M6\@,1ST75OP
MPEK;R'K,E+BF.8F4Q__)5&B#,<WA80(ZC+M*\]0#-P#47QAOT 8T%3%\W':
M:=DL5&F61E8G7V.W(S(K83C&FN*R;(PH-=>QFN]%Y?5^^GW[+*8<O%GM<93E
M>0GJ2A\K89NMN=I"X:L%*?2]AC"/TRU)G4DF$[GB^K;R(!P0(F\Y#6 H1\-6
M*WWB^FV!+PO$;*C"R)'AWOBW+V;>>LA,/PR&6W/Y' K[>=$D=*:T]M&E+QW[
M!V++D_E5GNROIW_?A?X-49@"&5)]A?HXX%6E%8"N;WQ[>[(E-VO4[XIO[.RE
MZ,Z6IB40/4ONA"21<F7J,AU;KO1\LMNI>7]I/R.8EZ<#$8<4GS,(?1ZR36JW
MT)IXB7)=:.&)5,XBJ0PGD_%==RC+!;^FB;9SSSEQ_A"NTFD/A*MHT35,BJ>#
M4-RU9,61Y)[WM^-Q#%NC3[K=?D\W!GXO[G /)+O_ XE.!-;?7HZ'\L7PS>3L
MOO0R]G5MA7L@^7T=2'3X,U%XG$XJNO8]X:3P570HN7^-/_$2\7?6Z.DW5KEJ
M)AN/'2GC5T]KVP^%"XO[5PNI,/6T ]V#*^OGW*/:%LLJ7V3]*^L03R7C,1EO
M;[?G%B;UBT\7P_$PBG3YLU2I3J_%D3\E'>9![,V,B9&2#F(\7XO2 ,"/L_^M
MH%(-G@]?2^="U-+:<E7H<7EK:355ODD/&K^OJEF_6MJ!%*&PY*$9<NLTML,9
M;&!>?\R8SA/3?2KE_&OLJ$YH;Y:=>4+74<2(E@]L8X4^NU=Y,%GT,\.A/X4>
MU3GMS?:)D7(/8(&O9**<#7,B8;&>.HZK;^JRK *VBDM,B-(A@3=K:8ZQ&\OD
M<1LWYP="7?V^>JV 3__VN_;<2&>)!]_F+N!ZBJ5$.KT>Y2_H2/&M.&U3R/6(
M+D3]//Q=AZXQ>778*4J?_,>'[#M5Y,2:/H@33J8H5++L"((Q?>G8<[LA+X>&
MZ+\]0U=Z0"_PWET^Q=2WKDS]>=>49G*]-J'[?IW!L!FZTJS^WF&2:1?:>3GO
ME$H?$4L'/O2-OQ_UF+$UY3:IL%V(JUU4U-AG!,^^YZW;Q\?*%@4U,2VB"6?H
M2"J52F3RVP+_;@&6;')(=K_%,3;>^4R7F>'OX5BYRX15''-0!3'A634^KH =
M\%=Q[X4N-A;[J OWXW*2?>R", I=#JVX)3PCP\?8I%,,9B^%*F%6TCH4JMA$
M*G=]-6P-7]@/>;2'0I5<# I5 E$\Q$(55RTGLD]L,9\4U1N/"&V$Q2JY0\MQ
M1%"L8CN4N^?/UM-#MG$W\YD'#?- 3L4JP?*@$56HV-(Z$52HV!AO='U=5EYS
MBRX-]E"ADHM!A4JHE82;5*C8[=!6)SWBNL/**+^7"I5\#"I4; &*'56HV ZC
M\M6XS\Q>JY/?NZ]0R9\J5#8VH'=0K%+=0;&*C1]OGY_IQ[M)A7WS;5%'E&+/
MQ\"0"]6ZWJ18Q78^[>?/S&M^-'JI>Y0=[ZA8)1^#8A6;D.RO6,5V5L]SZ7,X
M;8]G:7JOQ2KY4['*>@O\D"M4TF%5J-A8^/YV\E5[%.\DX+MV\: J5,(>@%U
ML%HA3G6/1XE*:?\E*C;._#U+2?Q]Y;8V\(BF_U$E*F'Q\DI&WPDD[E S^DN5
MX'$H4K&Q=0U4FTVY?C=YYDY%*A$Q=?(R%Z**WCM3'VR9R@;UPVE"QC7U+.EU
M>TMO:*#A[U&LJ/9Y$-T-&KP@IN:L3)2KR:)Z\Y&ZK_=]6V_X?[U--W<JQ*AB
M)@QK+I5(9I.)7"%X45MZ.]GUP9^^W^A4'1$*%'#0ZIN:^ZWW6!#XM[KXG9(*
MFU7?K+"M#^+$OB(GK-LN?9DJ'1O_UO94W>/!PJ/\[WGI]G<S,_)@8;?JGBC9
M=W\5/^$Y(9G"(7-P@#<Z'_(*D'LZ/-_%74$9J(,6T$&$1=YCE3=G"7C_&$WZ
MB]_I;]$N 1>T#S!#C-3[MZ-D;#H :77*(*M*Z"T_PG1U@M/PQZ_<I8EE9\QX
M<H[0;L1FX9:/QS<D?%K-H:QF3YZB9F=A .>#\!3#+=,Q-K_&4QQ44SEZ.FO>
M/'CU3EB)>0".HFW[)T<QJ*$=9D&OY3@V=A3SZ?G=[>=KJ<Z5 D?]G=@V+HZB
M3]J<',6 _)O:8Y@?':8G,W-,E7ZME;\?KSR8V2'6'P4C[R?HCW9R<AUWZ#J&
MB?_KKK/<_)Z4N_/X,/S\W:#G=T5A*^?1448B<A[#BK)L0,<=.I#_Q<-/G(<2
M6V88E7.HV'M4?1Y<UUZ>S=DKASU@1J?(TC@8,E-*F^K]Z]__N;B@KCG L_]0
M+7AF/^'#OE0@,/ AN=1/HKHAT:F+"UT/L-S4?VG,"A7R>.Y-H($T_L;,.(W7
M<7?5X"DY<9"%ZY8>;?VD/N?"2CB=9#^I[GP"WU^6Z#['_*30R$!"UH:(")A+
M6;_U7_UKZ$\FV^HL^^]_(:&=:"X!^O.B#Z!XPX=/\)E9F8^0V!B11/Z$^<]D
MB,GRTZV+0JLE"[)PR0ZG+IVF1P69*::("KQ".*A>.4&&=\,4!^>ASZM-G:>
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
M3W>#3EOH+=C\$_L@/KYGY(\C@?XX:@2'LGQ^YHG[1,MV"+&D10G6QA->G ,
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
MKD?^;;RM>"6B+4;*-[$MJLIOR3J;(Q@O.H.TU/S\^AK./% 2K<&8W7/-5OC
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
MC+1U)9[_T?7+N]1A?^ &35!//=RT_+.SA,[*:F?^,'A]>(U9<,]<OAQ?"0U
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
M%Z9?"G_?'APND^PL$KL1DT1BQ:Z_U?=N FQSFP;8QS%W,H9(AMA<PRYU-)R
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
M$B<C%8<1L1B>YL;P@0AY0I:Q"9>@>(,/$FB(,WKARGQ4$WE+5"4&K Q"G8T
MM P4!%8UD<0^TAAXKK-"T19(BQ%T^/L ?5('W$"/18T5VM13AM8&2].R*,"'
MS"D "88FP;*7T+<=HFFPN!W)BM@!]RH HI$Q8H>= .=G:+$:7@%&*-"__V=U
M)1W)YE;0T6AX(PZ P-*0@1"NRTQ$/ YY0+NF"<-KK"8! #\N<5,:C2&&C*%A
MLN$/(1DQ)I_K;X#\/%;Y(8ZU#."U2V!IQIP,#08\L7<B03E"L2[BYRFB,9)#
M X]!P#?(U%"1"2<RG_@C8_A<:#&@^>?Z5'(,'H=Q<B2R7):# J:(TFK_$<&Z
MF< E0R8?#! L_AA]'J%T0!:GX5?F%$N/:30VV9RECJ<52QBAWJ6A"=*#Y\$0
M";0D"D-61/M#H#B"+J%PZ7VT)W$*Q1A1"HUH7L;>Z0.> U,\1!Z@'#T]DU5.
M:PY$ BJJ"IG:CO>(:DX$%I.-'"/ZVOD9@VDYY88BM&AE?F[#Q%,%',Y",'V:
MBD";0Y.B,4()U %X'#7\=(*<*8.'46O;GP$)GXX$M!VA';+05I/)$'L>6UDR
M9 T4T=1V@M>$ 7\TZK&:$:F,.,0 *,&76.(=5@0$O4^CR8J*-)A-?SBD#\_K
M:R1T5X4!/14EHE$AZ1#TX$]J),[@XR1MB]8/4=IGM"V*E,A 54<M;R*A+P22
MB;,N1!_638C5!^84;FWZMHUAR&)EBRV-Q&D)7^DO^6_T"X)YB,B"\)*,=?8!
M^A\+4? P;'RF\*<X*>B54MOD98X3C@'7L(.4TDCDH5Z4:U\JS@DK8#VDX1+
MA-]G]!8/@\*TU;QN5C[R1^(EF&B&65<TPW)OH<B9^<WLZ8X'#&JT1OJP#2;0
MFAJANZ(EB4.)'A\_D"&DEL[I1[O'.KPW'FEXLI9VXM7FX;Y(2W@(@WG-:]"M
M&$:+DD?$Q#8X9$(XA"CK&=;0-,J>+5TYN//>^(HZ@6:X2/W?U="=371-1M3X
ML&PLA90_XHC=1,@)>0T$/8-B+.U,/5EJJ)E;#A@Q%OP\IW5;=T=**M=AI/A;
MF4LD)9GQ'TFYR!F!E+R]=?#2:6HFB>Q!]N#1PN$QHOPQ,L'&HD#L/&*S.!#"
M, M$ G8)5D^09J *19WDR/Y$^ F,RM,2!9>/<B[P7>0UYV>81S1G37%^V9A&
M)ADR R<$W@WZB+C"%3E(*CH+A: '0XZFEFU?@U71YR6 -JZ!+!-;&;V5G"3.
M4>*K?85I=>0(]%17AL963Q\9YBB^BVW5_APNXJ+*T4,!.GP<(VMK@=L1H%F+
MW%:T6&17FHN#IC2-'#QT'L(0&Z\6+U>WVN!%R*&Z>0$ UOAE7Y61VROKG?_2
M)U!,T]V))M:31@!Y$C3_L!4JL,@J&L(3PW:X!/!9:HXV(AGT2C&.M/86>!(L
MF0P5)V/GY(T&05!$J*$JCC@8D."))0ZQL#UK%0DW78D="BVX0IA:G8C$J%:@
MER-K^M+T0"#C328\QVBA%XEFP27508:V]<U$7V!7; 1X'#Y1D*NJ2G,BS0C
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
M</PX3$G,-)E/3<VIVC!5S<9Z1*L]\A''+W/QU'!15[(4.NS<$A>[(GC)^1[
M88._)=B#>'Q#!H#!'&0//,^ M#$XW13B9)UTD:C37,L;_"L.^$"[F-A-U!,A
M&PX#1U=;Q"$#YDR@= N-PYQ5?%3TH!L4$@#Y&(OQ8KQD_;>?@YK'%VJB,RG.
M2 [U%Q+1H?>)[Y*N#A5'5(<EP]C#-T.9/JV&&Z.9T$NQD0@0@$HON+2D1\ 2
MN>Z[]DC%;<P08G?2T#G(62&*^8BL#.!ZADM<2Z7(#?/6@%XI \IS9X8$)/C\
MC&.M3P#O0A$@QGYAKWWR3HK2LE"7Y,!Q@) B:B;H&BFKLE+TV)>JA PK-H,$
M2Z$;NUS$2L7'9(%<5_;PFAS#5E7<ZCH*RV#7AG,1\;&C6'-O>XN750A?R*Q7
MFY8L2--"MYM%J)UZ=Q7V X1@@Y!5$['<CY!4O@"5G@W?%U@<@\$;'*L'=A1V
M(RX(X$+7 ?:*X$W_@X,4D,@)%;$"O1RP?M*^S;E:6XG,@\E1OB)'V>%8YY(2
M$28W646/)KGK3*%L"_)/>,JG]YB +4__F!JWY(_*0+DJRZ=[_I3J)SON /4"
M?*L$*YF \G( N3FB' V@@[ G,\+>&>%=7UWTF;ZZO76;K4,T&JF*&ND>PPI&
MD_1\E>_/UY^JFM.QY''1#4KY2@*J'9DOK2J+'^9T_OI.?/]7O8E7T+S@J_O+
MK]M;C<:>=?G/R_/?[Z_^<6F=?_MZ<WE]=W9_]>W:Z(PJZHP_E,(0NAXX' CT
M-S*SW#(W?_G91_H.J;B52;D?=Y?GX)'07=>T)V-1,D2Z8D11.OA3.)L!BS&P
M')0OR"0^&R(CF1LKEY;QY_J*DB%K]+='!V+[;%\84*UNGJA$375G,BT.0M0E
MW\>\U#2JX9.P+AN;]^"7+G7$@6]U2Q]+@22+J&YC!7L> 2C?G9!I/S!J>/4'
M<<X:^(X[]PFI-MWT>Q1.HV.KJ&.IMXT+/:B00&$WP"<XQ1;Y$<W4S":BA-.Q
M&#G XWL5JGI),K#84#7ILQ5AP5FVP,K"2+6'<9MU%[01O)(:EJ9A89-VA1\:
M5&A+D:Y/R36E]QU=P6)ACXF@=A,W'GAA1NV.-=\D@:?"Y%2-*831XHV-XJ'>
MM_$6$:J_4*^A'/T0T].1NGHJW1B^55>Q'I@JUOE6L1Z8*M95B/D:KF-\!2\Z
M,K.O<K;#]8X$Y8GSQ$QYI^4I/4;/*PA:^:/$FRE\CMMY]_%:@WC<)+G-&P71
MS<<D??[$MS]8BC_).^EMJ6# ]U,J8;7(YK^^:XZKFY=07*P@_A>,XSBYA;05
M\B!#[GHL]TZXX)1NT((_^5X<6CN-]_->\\(76&C.7JTB216.N\?)8^<:^&"7
MZ%B(8ZT#X6>/5#F[TWP_1OW+M][(R0SL=EWK&Z5UUE%8,*JW=EI&5);!['L,
MG==52G2L^W9)P;AC)A>O*-\1]-H[S?I!K=DZJ34/#]\7N('*ESP8#Z8X[+IX
MI+JDRYZ8\._4%YM_GB*L8]%:X>.+CX3ZRM&4\ XS&%.^\HJWO(G^GV8D/4 N
MOOO8.CJJ-0Z.UI-X(+S6/#A<4^)K!X<'M>/#^GJ2O[N>9#=JIT?'(/&-5Y._
M:.TW^?:;0(8T2<+Z;S$8?I@V TJOZ$E>SKHU4[3<!-N>>]X+B9G8S2*5=5BO
MU>L3QV8%E!S!+AX<GI: DD:M63\I4B8KH*5Y5#L^;96!D%JS>0"B,F&:%WC
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
MP@__'U!+ 0(4 Q0    ( -.#<%;P=:'_.A$  /+!   1              "
M 0    !C;V1X+3(P,C(Q,C,Q+GAS9%!+ 0(4 Q0    ( -.#<%88T5'E!1@
M &@_ 0 5              "  6D1  !C;V1X+3(P,C(Q,C,Q7V-A;"YX;6Q0
M2P$"% ,4    " #3@W!63_\%A#HF  !4:@( %0              @ &A*0
M8V]D>"TR,#(R,3(S,5]D968N>&UL4$L! A0#%     @ TX-P5L2XS3;)>0
MJH\' !4              ( !#E   &-O9'@M,C R,C$R,S%?;&%B+GAM;%!+
M 0(4 Q0    ( -.#<%;V.NFD\4T  ,UT!0 5              "  0K*  !C
M;V1X+3(P,C(Q,C,Q7W!R92YX;6Q02P$"% ,4    " #3@W!6D1NI!\T#  #I
M-0  "@              @ $N& $ 97@R,2TQ+FAT;5!+ 0(4 Q0    ( -.#
M<%83^5#J @,  $ -   *              "  2,< 0!E>#(S+3$N:'1M4$L!
M A0#%     @ TX-P5N2HR$!P"   /TD   H              ( !31\! &5X
M,S$M,2YH=&U02P$"% ,4    " #3@W!63KE%"E@(  #12   "@
M    @ 'E)P$ 97@S,2TR+FAT;5!+ 0(4 Q0    ( -.#<%:;W4C*E@0  $@;
M   *              "  64P 0!E>#,R+3$N:'1M4$L! A0#%     @ TX-P
M5A284GN0!   H!H   H              ( !(S4! &5X,S(M,BYH=&U02P$"
M% ,4    " #3@W!67;5..FIU @#?J!D #               @ ';.0$ 9F]R
?;3$P+6LN:'1M4$L%!@     ,  P U0(  &^O P    $!

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